无效的反应本机权限 ios.PERMISSION.CAMERA
Posted
技术标签:
【中文标题】无效的反应本机权限 ios.PERMISSION.CAMERA【英文标题】:Inavlid react Native permission ios.PERMISSION.CAMERA 【发布时间】:2020-03-24 04:28:47 【问题描述】:我正在使用react-native-qr-code-scanner 在我的应用程序中添加 QR 扫描仪功能。我遵循了所有的指令,并且在 android 上一切正常,但是当我在 ios 上构建我的应用程序时,应用程序无法找到 RNPermissions
库,所以我按照自述文件中的建议手动链接它。链接错误现在消失了,我收到了 Invali RMPermission ios.PERMISSION.CAMERA should be one of()
。该错误在react-native-permissions README PAGE 的 github 页面和解决它的步骤上进行了描述。
它说
检查您是否链接了至少一个权限处理程序。
我无法将其中所述的权限处理程序添加到 Podfile,因为它还会自动安装 React(0.11.0)
版本(但这不是必需的),因为我已经有了最新的反应。有什么办法解决这个问题?
[!]
当我添加后运行pod install
permissions_path = '../node_modules/react-native-permissions/ios'
pod 'Permission-Camera', :path => "#permissions_path/Camera.podspec"
我明白了
Unable to find a specification for `RNPermissions` depended upon by `Permission-Camera`
You have either:
* out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
* mistyped the name or version.
* not added the source repo that hosts the Podspec to your Podfile.
【问题讨论】:
【参考方案1】:我也遇到了ios.PERMISSION.CAMERA should be one of()
的问题,在 podfile 中使用以下命令将解决您的问题。
pod 'RNPermissions', :path => '../node_modules/react-native-permissions'
permissions_path = '../node_modules/react-native-permissions/ios'
pod 'Permission-Camera', :path => "#permissions_path/Camera.podspec"
【讨论】:
无法解析 ios.PERMISSION.CAMERA 应该是上述代码的 of() 错误之一【参考方案2】:我的解决方案是在 podfile 中进行以下更改:
添加 :modular_header => false
pod 'glog', :podspec => '../node_modules/react-native/third-party-podspecs/glog.podspec', :modular_headers => false
pod 'Folly', :podspec => '../node_modules/react-native/third-party-podspecs/Folly.podspec', :modular_headers => false
添加使用相机进行二维码扫描的权限:
pod 'Permission-Camera', :path => "../node_modules/react-native-permissions/ios/Camera.podspec"
希望这会有所帮助!
【讨论】:
编辑完podfile后需要安装pod还是正常运行?【参考方案3】:仔细检查文件路径,它应该类似于“/Camera/Permission-Camera.podspec”。
permissions_path = '../node_modules/react-native-permissions/ios'
pod 'RNPermissions', :path => '../node_modules/react-native-permissions'
pod 'Permission-Microphone', :path => "#permissions_path/Microphone/Permission-Microphone.podspec"
pod 'Permission-Camera', :path => "#permissions_path/Camera/Permission-Camera.podspec"
【讨论】:
以上是关于无效的反应本机权限 ios.PERMISSION.CAMERA的主要内容,如果未能解决你的问题,请参考以下文章
如何在反应本机博览会应用程序(android)中授予相机权限