首页 > 解决方案 > android中targetSdkVersion的建议是什么?

问题描述

我有 2 个关于 targetSdkVersion 的问题:

1-android中targetSdkVersion的建议是什么?

2-如果我从 gradle 设置中删除它会发生什么?

标签: android

解决方案


android:targetSdkVersion

此属性通知系统您已针对目标版本进行了测试,并且系统不应启用任何兼容性行为来保持您的应用程序与目标版本的前向兼容性。

随着 Android 随着每个新版本的发展,某些行为甚至外观可能会发生变化。但是,如果平台的 API 级别高于您应用的 targetSdkVersion 声明的版本,系统可能会启用兼容性行为,以确保您的应用继续按照您期望的方式运行。您可以通过指定 targetSdkVersion 以匹配其运行平台的 API 级别来禁用此类兼容性行为。例如,将此值设置为“11”或更高允许系统在 Android 3.0 或更高版本上运行时将新的默认主题 (Holo) 应用到您的应用程序,并且还可以在大屏幕上运行时禁用屏幕兼容模式(因为支持 API 11 级隐式支持更大的屏幕)。

minSDK - targetSdk - compileSdk之间的关系

minSdkVersion(最低可能)<= targetSdkVersion == compileSdkVersion(最新 SDK)

不提供怎么办targetSdkVersion

您的 minSdkVersion 和 compileSdkVersion 为 < API 23(6.0 - MarshMallow - Have RunTime Permission) 并且您尚未添加targetSdkVersion.

默认情况下,您的应用程序将获得您在清单中提供的所有权限,因为您尚未使用 API 23 编译或提供 targetSdkVersion。

在这些情况下,默认为minSdkVersion. 如果您未提供minSdkVersion,则默认为 API 1。


推荐阅读