compileSdkVersion
android项目编译时使用的sdk版本,建议使用最新的sdk版本,可以兼容最新版本的API。
假如方法A
在api29
才出现,当设置compileSdkVersion<29
时,是无法使用到方法A
的。
miniSdkVersion
App安装时要求的设备的最低android版本。低于该版本,无法安装。
另外,在代码中,会根据miniSdkVersion
来提示某个api
方法是否过期。
比如:api15
的方法A
,在miniSdkVersion>15
时,会被提示已过期,但是仍然可用。
maxSdkVersion:如果设置了这个属性,当设备的android版本高于maxSdkVersion,无法安装应用。不推荐设置这个属性。
targetSdkVersion
一个用于指定应用的目标API级别的整数。如果未设置,默认与miniSdkVersion
相同。
该属性用于通知系统,您已针对目标版本进行测试,并且系统不应通过启用任何兼容性行为,以保持您的应用与目标版本的向前兼容性。应用仍可在较低版本上运行。
如果平台的 API 级别高于应用 targetSdkVersion
所声明的版本,系统便可通过启用兼容性行为,确保应用继续以您所期望的方式工作(即应用的外观和行为保持为targetSdkVersion
的)。
一般来说,miniSdkVersion
要低于targetSdkVersion
。
buildToolsVersion
这个已不推荐使用了,不做介绍。
什么是向前兼容和向后兼容?
向前兼容是兼容最新版本的API,建议将compileSdkVersion调整为最新。
向后兼容是兼容旧版本的API。建议指定miniSdkVersion和targetSdkVersion。
Build.VERSION.SDK_INT
这个是当前硬件设备的android版本。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。