Android 三个SDKVersion的含义
1 | android { |
compileSdkVersion
表示整个项目编译时所使用的sdk版本,用于一些检查,一般使用最新版本,此值,影响了dependencies中Android Support的一些依赖包,需要同步到此版本的最新版本的依赖包,否则会提示报错,但不会影响编译
minSdkVersion
表示打包后的apk支持最低Android系统为多少,此值会记录在apk安装包中
targetSdkVersion
关系到是否能够使用到什么版本的新特性。举例:
android 23 ,加入了运行时权限,那么如果设置为23及之后的值,则需要在代码中适配运行时权限的操作
android 26,加入了通知栏渠道,那么在26之后的值需要使用最新的代码编写通知
…
此值关系到能否使用最新版本的android中的新效果,新特性,同时在某些功能上需要重新编写代码,因此,如果不想适配新的功能,则不要设置此值为最新,同时也无法使用到最新版本所优化的一些功能。
结论:如果没有使用到最新SDK中的技术,某一版本就能够达到开发APP的要求,那么也就没有必要升级到最新版本的targetSdkVersion,不过如果你已经了解并熟悉了最新特性的代码的编写,升级到响应的sdk版本,能够得到更好的效果。
附android版本图:
