iOS 模拟器权限被拒绝并且不显示权限警告对话框

iOS simulator permission denied and not showing permission alert dialog

我正在开发 iOS 模拟器,但在请求权限方面遇到了问题。

我的应用程序运行正常,可以访问照片库、相机和定位服务。但是在安装新的 XCode (8.1) 后,我 运行 模拟器上的应用程序,应用程序不再允许使用照片库或相机或定位服务。

我试图以编程方式请求权限,但它没有显示权限请求对话框并且总是 return 拒绝状态,即使我添加了隐私说明和捆绑显示名称。

确保您的 .plist 看起来像这样

<key>NSCameraUsageDescription</key>
<string>This app needs access to the camera to take photos.</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>This app needs access to photos.</string>

此外,如果您在限制中禁用了对照片库隐私的任何更改,您的应用将无法使用您的照片库(它甚至不会请求许可),直到您关闭限制。

尝试删除~/Library/Developer/CoreSimulator/Devices/xxxxx-xxx-xxxx中的模拟器,从其他机器上复制一个新的

我发现了问题。这是因为您的 Xcode 没有放在 Applications 文件夹中。将 Xcode 移动到此文件夹并享受。