Почему предупреждение о местонахождении разрешения не появляется? - PullRequest
0 голосов
/ 03 октября 2019

Я пытаюсь показать предупреждение о разрешении местоположения в своем приложении для Android, но оно не появляется.

Это мой код, во-первых, функция, вызываемая для проверки прав доступа:

checkPermission = async cb => {
    if (Platform.OS === "android") {
      try {
        const granted = await PermissionsAndroid.request(
          PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
          {
            title: "IZI CHECK",
            message: translate("access_location_msg")
          }
        );
        console.log("granted:", granted);
        if (granted === PermissionsAndroid.RESULTS.GRANTED) {
          cb();
        } else {
          alert(translate("location_permission_denied"));
        }
        console.log("Granted:", granted);
      } catch (err) {
        console.warn(err);
      }
    } else {
      cb();
    }
  };

наконец, я звоню в componentdidmount () :

async componentDidMount() {
    await this.checkPermission(() => {
      navigator.geolocation.getCurrentPosition(
          (position)=>{
            this.fetchProfileStatus(position);
          },
          error => {
            if (error.code) {
              console.log(error)
              this.props.navigation.goBack();
            }
          },
          Platform.OS === 'android' ? {} :{enableHighAccuracy: true, timeout: 20000 }
        );
      });
}

Спасибо

...