Android 11 位置权限弹出窗口,用户点击 "only this time"选项时,为什么操作系统不再询问权限

标签 android location android-permissions permission-denied

在 Android OS 11 中,面向 SDK 30+ 的应用。当我们第一次请求 location -foreground 权限时,我们会得到一个带有三个按钮的权限对话框。

enter image description here

根据文档,操作系统仅在此时授予权限。

https://developer.android.com/about/versions/11/privacy/permissions#one-time

当我点击“只有这一次”时。 从用户的角度来看,权限应该再次询问。当我回来的时候。 但是在授予权限的实际操作系统中。 为什么会这样。这是系统行为吗? 我需要在应用端做任何更改吗?

感谢期待。

最佳答案

在 Android OS 11 中 - 如果我们授予“仅这一次”权限。这意味着操作系统正在授予下一段时间的权限。 当您立即打开该应用程序或您的应用程序在后台并再次打开该应用程序时,您会发现已获得许可。

如果您过段时间再来,您会看到未授予的权限。 再次出现权限弹出窗口。

关于 android OS 11 的更多发现:-

直到 Android OS 10,shouldShowRequestPermissionRationale 函数第一次返回 false,但在 OS 11 中,shouldShowRequestPermissionRationale 函数第一次返回 true,并且当用户处于文档中解释的困惑状态时。

直到 android OS 10,如果 shouldShowRequestPermissionRationale 为 true 并且当我们第一次请求权限时,将显示 android OS 权限弹出窗口。之后,如果 shouldShowRequestPermissionRationale 为 false,则不会显示权限弹出窗口。

但在 OS 11 中,无论 shouldShowRequestPermissionRationale 返回 true 还是 false,我们都能看到弹出窗口。

希望这会对某人有所帮助。如有不妥请指正。

关于Android 11 位置权限弹出窗口,用户点击 "only this time"选项时,为什么操作系统不再询问权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66288530/

相关文章:

flutter - 是否可以通过 flutter app 共享您的位置

iOS - 允许所有用户找到他们附近的 map 图钉

android - 通过 setPermissionGrantState 或类似方式自动授予 ACTION_MANAGE_OVERLAY_PERMISSION

android - 阻止图库应用程序中列出的目录

android - 选项卡布局中的膨胀选项卡项与 android 中的父项不匹配

Android 从谷歌账户中检索用户国家

安卓棉花糖 : permissions change for running app

安卓棉花糖 : Changing permissions at run time crashes app

android - Android Studio 升级后出现 NoSuchElementException

android - Activity 跳转开始时的动画