我已经使用 read & write
库创建了用于授予 location 和 storage react-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);
});
});
};
答案 0 :(得分:1)
我们可以使用全局变量进行管理,根据用户输入更新全局变量中的权限状态。
并检查用户输入是否已授予用户执行某些操作或再次请求用户的权限,如果用户已永久拒绝该权限,则打开请求用户打开设置并允许继续使用应用程序的权限。