【问题标题】:React-native:- Location permission dialog is not workingReact-native:- 位置权限对话框不起作用
【发布时间】:2019-05-13 15:51:03
【问题描述】:

我想启用我的设备的位置(android pie)。我已经阅读了 react-native 权限的文档,然后尝试实现它,但每次它都说“位置权限被拒绝”。我什至尝试使用外部库(react-native-permissions)然后它说:-“未确定:尚未提示用户使用权限对话框”。我也在清单中给出了权限(FINE_LOCATION 和 COARSE_LOCATION)。我什至尝试在应用程序权限中手动授予权限,但仍然显示权限被拒绝。如何启用位置信息。

代码如下:

async requestLocationPermission() {
try {
  const granted = await PermissionsAndroid.request(
    PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
    {
      title: "Example App",
      message: "Example App access to your location "
    }
  );
  if (granted === PermissionsAndroid.RESULTS.GRANTED) {
    console.log("You can use the location");
    alert("You can use the location");
  } else {
    console.log("location permission denied");
    alert("Location permission denied");
  }
} catch (err) {
  console.warn(err);
}
}

在 componentDidMount 中调用它:

componentDidMount(){
this.requestLocationPermission();
}

【问题讨论】:

  • targetSdkVersion 里面的android/app/build.gradle 是什么?
  • 28 targetSdkVersion...buidtoolVersion 是 28.0.3

标签: react-native permissions geolocation android-permissions


【解决方案1】:

我也是这样做的。在 AndroidManifest.xml 文件中添加了 FINE_LOCATION 和 COARSE_LOCATION。并像你一样编写上面的代码sn-p。

然后我也收到了位置权限被拒绝消息。

然后我打开了 AndroidStudio 并进行了清理和构建。 从模拟器中删除应用程序并重新运行它,react-native run-android 然后位置权限对话框来了。

【讨论】:

  • 你也可以用这个命令清理它:cd android && ./gradlew clean
【解决方案2】:

我知道这听起来有点奇怪......

尝试打开 Google 地图。有时会出现该对话框。

从字面上看,这就是我的答案!

【讨论】:

    【解决方案3】:

    您使用的是模拟器吗,定位服务在 Android 模拟器上根本不起作用,这与模拟它的 iOS 不同。

    安装“react-native-device-info”并在使用定位服务之前检查它是否是安卓模拟器

    【讨论】:

      【解决方案4】:

      应用权限方法后,如果您看到类似“位置权限被拒绝”之类的消息,或者您无法看到权限对话框。。然后重置您授予的权限。

      1.如果您使用的是模拟器:为此,在命令提示符下在当前项目目录路径中运行 cmd:运行:“adb shell pm reset-permissions "

      2.如果您正在使用您的设备,则拒绝设置所有权限。

      这将重置您所有给定的权限。之后,在我的情况下,我可以看到权限对话框并能够自行允许或拒绝权限。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-03-06
        • 1970-01-01
        • 2018-06-20
        • 1970-01-01
        • 2011-07-01
        • 1970-01-01
        • 2017-05-06
        • 2022-09-26
        相关资源
        最近更新 更多