【问题标题】:Location permission prompt not showing in MIUI 12.1.4 Android 11MIUI 12.1.4 Android 11 中未显示位置权限提示
【发布时间】:2021-07-28 11:30:15
【问题描述】:

我在 MIUI 12.1.4 Android 11 中的位置权限提示出现问题。它没有显示是否有 PermissionsAndroid.PERMISSIONS.ACCESS_BACKGROUND_LOCATION。另外,我控制台记录了结果,它给了我这个...android.permission.ACCESS_BACKGROUND_LOCATION": "denied", "android.permission.ACCESS_FINE_LOCATION": "never_ask_again"}

这是我的代码...

 const granted = systemVersion > 9 ? await PermissionsAndroid.requestMultiple([
        PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
        PermissionsAndroid.PERMISSIONS.ACCESS_BACKGROUND_LOCATION,
      ]) : await PermissionsAndroid.requestMultiple([ PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION ])

当我删除 PermissionsAndroid.PERMISSIONS.ACCESS_BACKGROUND_LOCATION 时,位置权限会显示,但没有“始终允许”选项。如何解决这个问题?谢谢!

【问题讨论】:

标签: android react-native android-11 miui react-native-permissions


【解决方案1】:

即使您将ACCESS_BACKGROUND_LOCATION添加到请求的权限列表中,系统也会忽略它。 如果应用程序需要在后台使用位置。为此,您必须准备自己的对话框,其中包含解释背景位置使用的明确消息。 当用户同意后,将他带到应用程序的设置页面,他可以在其中选择他想要授予的权限级别。

阅读Article了解更多详情

【讨论】:

  • 您好,谢谢您的回答。你能帮助我如何修改我的对话权限的标题和消息吗? const grant = await PermissionsAndroid.request( PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION, { 'title': 'ReactNativeCode Location Permission', 'message': 'ReactNativeCode App 需要访问您的位置' } ) 我试过了,但对话框内容没有改变
  • 我不知道这在 RN 上是如何工作的,你能检查一下这个 repo github.com/zoontek/react-native-permissions/issues/435
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-30
  • 1970-01-01
  • 2016-11-23
相关资源
最近更新 更多