在授予权限之前调用的请求权限方法
Posted
技术标签:
【中文标题】在授予权限之前调用的请求权限方法【英文标题】:request permission methods called until the permission is granted 【发布时间】:2021-07-02 04:12:27 【问题描述】:我创建了使用react-native-permission
库授予location 和storage read & write
权限的方法。当用户拒绝权限时,权限对话框被禁用。但我正在尝试这样做,request 方法是循环调用的,直到用户允许 location 的权限。所以,我该怎么做。请提出任何解决方案
代码:
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);
);
);
;
【问题讨论】:
【参考方案1】:我们可以使用全局变量来管理这一点,根据用户输入更新全局变量中的权限状态。
并检查用户输入是否授予执行某事的权限或再次向用户请求权限,如果用户已永久拒绝该权限,则打开请求用户打开设置并允许继续使用应用程序的权限。
【讨论】:
以上是关于在授予权限之前调用的请求权限方法的主要内容,如果未能解决你的问题,请参考以下文章
在用户授予接收推送通知的权限时未调用 didRegisterForRemoteNotificationsWithDeviceToken