延迟android请求权限



我有一个包含<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>的应用程序

有没有一种方法可以延迟向用户请求位置权限,直到他们获得需要的帐户?我已经尝试从XML中删除使用权限,即使在以编程方式请求位置权限后,这也会破坏位置。

我确实会以编程方式询问位置信息,但这似乎只有在XML中也指定了权限的情况下才有效。

我假设您正在经历这种情况,因为您的目标是低于Android 6.0?

根据文件

Android 6.0棉花糖引入了一个新的权限模型应用程序在运行时而不是以前向用户请求权限安装。支持新型号的应用程序请求权限当应用程序实际需要受服务。

因此,除非您的目标是更高的API级别,否则您将无法避免在用户实际需要使用该特定服务之前请求权限。

如果您需要权限,则不能将其从清单中删除。如果您的目标API高于23(Android 6(,只需在需要时以编程方式请求权限。您作为开发人员决定何时请求权限。

否则,如果用户的设备低于android 6或如果您的目标API低于23,则在安装时将请求权限,您不能更改它。

最新更新