权限已授予,但告诉您未授予权限REACT-NATIVE

时间:2020-11-08 14:41:41

标签: react-native android-studio

我正在构建音乐播放器,我需要访问音乐文件,所以第一件事是要求获得对文件的访问权限:

componentDidMount() {
    this.requestPermission();
}

requestPermission = async () => {
 
    try {

        const userResponse = await PermissionsAndroid.requestMultiple([
            PermissionsAndroid.PERMISSIONS.READ_EXTERNAL_STORAGE,
            PermissionsAndroid.PERMISSIONS.WRITE_EXTERNAL_STORAGE,
      
        ]);

        if (userResponse === PermissionsAndroid.RESULTS.GRANTED) {
            alert("nice");
        }else {
            alert("no nice");
        }
        
    }catch (error) {
        alert(error)
    }
};

即使我已经单击允许并重新加载项目,它也会说不好,我还是打开了应用程序的配置,并且存储的权限还不错,所以请不要这样做

1 个答案:

答案 0 :(得分:0)

根据文档requestMultiple,将返回一个对象,该对象的权限为键,字符串为值(请参见上面的结果字符串),指示用户是允许还是拒绝该请求,还是不想再次被询问。

尝试

if (userResponse[PermissionsAndroid.PERMISSIONS.READ_EXTERNAL_STORAGE] === PermissionsAndroid.RESULTS.GRANTED && userResponse[PermissionsAndroid.PERMISSIONS.WRITE_EXTERNAL_STORAGE] ===
 PermissionsAndroid.RESULTS.GRANTED
 ) {
  alert('nice');
 } else {
  alert('no nice');
}