【发布时间】:2021-12-17 06:38:51
【问题描述】:
使用 Expo BarCodeScanner 时,一旦用户在 requestPermissionsAsync() 调用后拒绝所需的摄像头权限,将始终返回 'denied'。
【问题讨论】:
标签: react-native permissions expo barcode-scanner
使用 Expo BarCodeScanner 时,一旦用户在 requestPermissionsAsync() 调用后拒绝所需的摄像头权限,将始终返回 'denied'。
【问题讨论】:
标签: react-native permissions expo barcode-scanner
来自展会documentation;
您通常希望能够测试用户拒绝权限时会发生什么,以确保它具有所需的行为。 iOS 和 Android 上的操作系统级别限制禁止应用程序多次请求相同的权限(您可以想象这对于反复提示用户权限是多么烦人)。因此,为了在开发中测试涉及权限的不同流程,您可能需要卸载并重新安装 Expo Go 应用程序。在模拟器中这就像删除应用一样简单,expo-cli 会在您下次启动项目时自动重新安装。
但是,您并不总是需要删除应用程序并重新安装。您也可以通过进入设置和应用程序权限手动授予权限。
【讨论】:
Linking library。当Linking.openURL('app-settings:')(在 iOS 上)被执行时,Expo Go 应用程序的设置页面将被打开,然后您可以允许所需的权限。