我的旧应用程序可以在 Marshmallow 上正常运行吗?

Will my old app works normally on Marshmallow?

我有一个旧应用程序,我必须对其进行一些小改动,创建一个新版本并将其更新为 Google Play。我是否需要对运行时类型实施新的询问权限?或者我可以只更新新版本并且它可以在 Marshmallow 上正常工作吗?

是的,它适用于棉花糖。 只需在清单文件中包含 "target api" 到“23”即可。

只有当我们将应用程序的 targetSdkVersion 设置为 23 时,新的 Runtime Permission 才会起作用。并且此功能仅在 Android 6.0 Marshmallow 及更高版本上起作用。相同的应用程序将 运行 在 Marshmallow 之前的设备上具有相同的旧行为。

如果设备有Marshmallow 或以上版本,但您的应用的TargetSdkVersion < 23,您的应用将继续使用旧的权限模型,但用户可以随时撤销权限。

无论如何,如果您的应用在其清单中声明它需要普通权限,系统会在安装时自动授予该应用该权限。

如果您使用 targetSdkVersion 22 或更低版本,它应该仍然可以正常工作。如果您将 targetSdkVersion 设置为 23,那么如果您尝试使用在运行时未询问用户的 "Dangerous permission",您的应用程序将会崩溃。看看这个页面: https://developer.android.com/training/permissions/requesting.html