compileSdkVersion
compileSdkVersion就是你创建Android项目的时候选择的SDK版本,编译过程会检查是否有使用废弃API,所以升级compileSdkVersion有助于发现是否有废弃的API,为使用新API做好准备,但是修改compileSdkVersion不会影响应用的行为,因为最终compileSdkVersion不会被打包进apk中。
minSdkVersion
minSdkVersion决定了应用所能运行的最低Android系统版本,使用较低的minSdkVersion,可以覆盖到最大的人群
targetSdkVersion
targetSdkVersion是这三者中最重要的一个,它是Android提供向前兼容的主要依据,它的修改会带来不同的行为特性,在Android系统每次大版本发布后,一般都会有新的特性出现,应用要支持这些新特性,就需要升级targetSdkVersion。targetSdkVersion升级后,务必要进行全面测试,谨记!
三者的关系
总的来说,三者的关系是这样的:
minSdkVersion <= targetSdkVersion <= compileSdkVersion
minSdkVersion为了覆盖最大人群,做到尽可能小;compileSdkVersion应该使用最新的SDK进行编译,可以及时的更新使用新的API;targetSdkVersion同样也应该适配的最新的SDK版本,支持最新的特性,这是最理想的,三者的关系可以变化为:
minSdkVersion < targetSdkVersion == compileSdkVersion