如果我使用的目标SDK版本是21,我可以在API 23上运行我的应用程序

时间:2016-09-04 10:38:54

标签: android android-studio target-sdk

我开发了一款Android API,其API 21作为目标SDK版本。

它上面的API运行良好,例如,API 23?

3 个答案:

答案 0 :(得分:2)

完全可以使用targetSdkVersion并将其安装在具有更高SDK版本的设备上。

您在build.gradle中指定的targetSdkVersion告诉系统您已经开发并测试了您的应用程序以使用该SDK。 如果用户在更大的SDK上安装您的应用程序,则系统负责提供向后兼容性(如果有任何更改)。

一个很好的例子就是SDK 23上的权限。由于该版本需要在代码中明确请求危险权限,只是声明清单中的权限不再足够。

但是,如果您将此应用程序定位到SDK22,则不需要通过代码显式请求,并且如果您在更大的SDK系统上安装此应用程序,它将起作用,因为向后兼容性,在这种情况下是在安装时接受所有权限。

答案 1 :(得分:0)

根据Uses SDK

  

android:targetSdkVersion

     

指定API级别的整数   申请目标。如果未设置,则默认值等于给定的值   到minSdkVersion。此属性通知系统您拥有   针对目标版本进行测试,系统不应启用任何版本   兼容性行为,以保持您的应用程序的向前兼容性   与目标版本。该应用程序仍然能够运行旧版本   版本(低至minSdkVersion)。

它也可以帮助你了解这个

  

<强>机器人:的minSdkVersion

     

指定所需的最低API级别的整数   应用程序运行。 Android系统将阻止用户   如果系统的API级别低于,则安装应用程序   此属性中指定的值。你应该总是声明这个   属性。

答案 2 :(得分:0)

您的minSdkVersion肯定低于API 21。因此,您的应用程序适用于上述SDK版本(包括API 23)。

你很好,不用担心:)

PS:检查此链接targetSDKVersion以了解有关目标SDK使用目的的更多信息。