compileSdkVersion:

编译版本:compileSdkVersion告诉gradle使用哪个版本AndroidSDK编译你的应用;

minSdkVersion:

最低SDK版本:他代表的意思是你的App最低支持的手机版本。如果你的minSdkVersion设置成了16(Android4.0),那么Apk在16以下系统的手机无法安装;

targetSdkVersion:

API目标版本:随着 Android 系统的升级,某个系统的 API 或者模块的行为可能会发生改变,但是为了保证老 APK 的行为还是和以前兼容。只要 APK 的 targetSdkVersion 不变,即使这个 APK 安装在新 Android 系统上,其行为还是保持老的系统上的行为,这样就保证了系统对老应用的前向兼容性。通俗点讲:它会告诉Android平台:此程序在此版本已经经过充分的测试,没有任何问题,不必在为程序的兼容性做检查判断的工作了;也就是说如果targetSdkVersion和目标设备的API版本相同时,运行的效率会更高一些;

buildToolsVersion:

编译工具的版本:是build工具的版本号。一般每一个android版本都会有对应的buildTools。Android系统在不断升级,每次添加新特性,就需要新的工具来进行build,所以老的build工具不能用来build新的版本。新的build工具可以build老的Android版本,新的工具兼容老的版本。一般设置为最新即可;

根据上面说的:compileSdkVersion是编译时使用的。minSdkVersion(maxSdkVersion)是在安装时使用的。 targetSdkVersion是在app运行时使用的。buildToolsVersion是编译工具的版本号;

build.gradle 中compileSdkVersion,minSdkVersion,targetSdkVersion,buildToolsVersion的意思的更多相关文章

  1. build.gradle中的dependencies

    demo_myna中的build.gradle中的dependencies是依赖项目.比如之前开发的一个项目A,现在新的项目B要使用项目A的功能,那么把项目A作为类库关联进来,这样b就能直接使用A的功 ...

  2. android studio build.gradle中 project.ANDROID_BUILD_SDK_VERSION

    1.メニューの [File] -> [Import Module]2.Source directory に先ほど解凍したディレクトリを指定3.「facebook」 を選択した状態に Finish ...

  3. 对于在Android Studio 的 build.gradle 中的默认applicationId 要不要写呢?

    起因 刚完成一个版本的开发.刚上Google play 就有用户反映无法更新应用.错误代码为:Can't install app "****" can' be installed. ...

  4. build.gradle中引入jar

    只需在 dependencies{}中添加: compile fileTree(include: ['*.jar'], dir: 'libs')

  5. android studio build.gradle 中的dependencies 的 compile jar文件

    1.其下载之后的存放地址 例如:compile 'com.qiniu:happy-dns:0.2.5' 存放在:.gradle\caches\modules-\files-\c0ee826650468 ...

  6. AS中的minSdkVersion、compileSdkVersion、targetSdkVersion、buildTools及tools关系和区别

    1.参考文章关于compileSdk.minSdk.targetSdk的文章 http://chinagdg.org/2016/01/picking-your-compilesdkversion-mi ...

  7. gradle中的compileSdkVersion和buildToolsVersion

    CompileSdkVersion:编译版本,就是运行这个项目需要的SDK,即API Level. buildToolsVerson:是构建工具的版本,构建工具包括了打包工具aapt.dx等等. 注意 ...

  8. build.gradle使用gradle.property中定义的字段及乱码问题的解决

    gradle.property文件可以用来定义一些字段 而这些字段可以被build.gradle文件引用到 例如:给大家贴出来一个gradle.property文件 # Project-wide Gr ...

  9. compileSdkVersion,minSdkVersion 和 targetSdkVersion

    compileSdkVersion(Eclipse中叫做build target) 1.在eclipse中位于项目根目录中的project.properties文件中 2.在studio中位于项目中的 ...

随机推荐

  1. Jenkins 配置用户权限错误导致无法登录解决方案

    最初配置Jenkins的用户管理权限时,因为不熟悉很容易将用户角色配置错误,导致配置用户后无法登录系统: 登录系统时候提示"Access Denied": 解决办法: 进入Jenk ...

  2. jmeter --JDBC请求

    转jmeter --JDBC请求 做JDBC请求,首先要了解这个JDBC对象是什么,然后寻找响应的数据库连接URL和数据库驱动. 数据库URL:jdbc:sqlserver://200.99.197. ...

  3. NET设计模式 第二部分 行为型模式(17):迭代器模式(Iterator Pattern)

    概述 在面向对象的软件设计中,我们经常会遇到一类集合对象,这类集合对象的内部结构可能有着各种各样的实现,但是归结起来,无非有两点是需要我们去关心的:一是集合内部的数据存储结构,二是遍历集合内部的数据. ...

  4. Sqoop 导入及导出表数据子集命令详解

    Sqoop命令详解 1.import命令 案例1:将mysql表test中的数据导入hive的hivetest表,hive的hivetest表不存在. sqoop import --connect j ...

  5. RedHat7局域网下安装离线Ambari

    1 Ambari介绍.安装与应用案例介绍 1.1 Ambari Ambari 跟 Hadoop 等开源软件一样,也是 Apache Software Foundation 中的一个项目,并且是顶级项目 ...

  6. Ubuntu中编译helloworld驱动

    1. 新建hello文件夹 2.hello.c #ifndef __KERNEL__ # define __KERNEL__ #endif #ifndef MODULE # define MODULE ...

  7. 串口转以太客户端(增加uci、可连接多个服务器)

    1. 进入barrier_breaker/package/utils文件夹,新建ttl_client 2. 该目录下的Makefile # # Copyright (C) OpenWrt.org # ...

  8. class path resource [spring/ApplicationContext-springmvc.xml] cannot be opened because it does not exist

    配置如下: <init-param>   <param-name>contextConfigLocation</param-name>   <param-va ...

  9. 放一个Dynamicinputs corresponding to Dynamicknobs的Node源码

    static const char* const CLASS = "AddInputsSol"; static const char* const HELP = "Add ...

  10. linux 服务器之间配置免密登录

    客户机:172.16.1.2 远程机:172.16.1.3 1.远程机 a.允许root用户通过22端口登录 vi /etc/ssh/sshd_config PORT 22 PermitRootLog ...