1

我已经创建了使用该库授予位置存储权限的方法。 当用户拒绝权限时,权限对话框被禁用。但我正在尝试这样做,请求方法是循环调用的,直到用户允许location的权限。所以,我该怎么做。请提出任何解决方案read & writereact-native-permission

代码:

  reuestMultiplePermissions = () => {
    return new Promise((resolve, reject) => {
      requestMultiple([
        PERMISSIONS.ANDROID.ACCESS_COARSE_LOCATION,
        PERMISSIONS.ANDROID.ACCESS_FINE_LOCATION,
        PERMISSIONS.ANDROID.READ_EXTERNAL_STORAGE,
        PERMISSIONS.ANDROID.WRITE_EXTERNAL_STORAGE,
      ])
        .then((statuses) => {
          if (
         
            statuses[PERMISSIONS.ANDROID.ACCESS_COARSE_LOCATION] ===
              RESULTS.GRANTED &&
            statuses[PERMISSIONS.ANDROID.ACCESS_FINE_LOCATION] ===
              RESULTS.GRANTED
          ) {
            resolve(true);
          } else {
            reject({});
          }
        })
        .catch((error) => {
          reject(error);
        });
    });
  };
4

1 回答 1

1

我们可以使用全局变量来管理这一点,根据用户输入更新全局变量中的权限状态。

并检查用户输入是否允许执行某事或再次向用户请求权限,如果用户已永久拒绝该权限,则打开请求用户打开设置并允许继续使用应用程序的权限。

于 2021-04-06T11:55:28.120 回答