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是编译工具的版本号;