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

Abh*_*hek 3 android android-studio target-sdk

我开发了一个以 API 21 作为目标 SDK 版本的 Android 应用程序。

它会在它上面的 API 上正常运行吗,例如 API 23?

fer*_*spr 8

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

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

一个很好的例子是 SDK 23 上的权限发生了什么。由于该版本需要在代码中显式请求危险权限,仅在清单中声明权限不再足够。

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