10当我升级到Xcode8后,启动我的相机项目,直接crash,输出的日志如下:'2016-07-08 16:41:11.268943 project-name[362:56625] [MC] System group container for systemgroup.com.apple.configurationprofiles path is /private/var/containers/Shared/SystemGroup/systemgroup.com.apple.configurationprofiles2016-07-08 16:41:11.272276 project-name[362:56625] [MC] Reading from public effective user settings.2016-07-08 16:41:11.356590 project-name[362:56700] [access]'使用Xcode7启动,却没有问题,实际原因是上面的输出日志中最后一行就是告诉你访问了隐私权限(aceess private),需要配置权限相机权限:Privacy - Camera Usage Description允许此权限才能使用相机功能因为我的项目还需要录制视频,并且想要保存图片,
所以需要增加相册:Privacy - Photo Library Usage Description允许此权限才能保存图片
要录制视频的一定要加上(麦克风:Privacy - Microphone Usage Description)不然会崩的
麦克风:Privacy - Microphone Usage Description允许此权限才能录音在info.plist里增加一项,key从上面的三项任一项拷贝,然后运行后会出现授权的警示框,同意后就没有问题了。
在还没有解决问题之前,即在未增加上面key之前,查看‘设置-隐私-相机’、‘设置-隐私-照片’、‘设置-隐私-麦克风’,即使安装了应用,也无法在‘设置-隐私-xx’里看到有这个应用出现。
由此表明,Xcode8即IOS10的权限相关改为了在info.plist显示的设置,原来是在代码中调用到相关模块,系统自己为这个项目记录权限,现在需要项目本身显示的要求权限,然后系统读取。当增加了key之后,运行应用即可以在‘设置-隐私-xx’里看到这个应用下面是相关链接,
和根据Privacy - Camera Usage Description搜索到的相关问题解答
1.https://forums.developer.apple.com/message/152229#1522292.iOS10
权限崩溃问题3.Information Property List Key Reference
网友评论