iOS10新增了很多关于权限验证的配置,如果不配置而直接访问,会导致Crash,没有办法,苹果就爱搞这套!
如下权限,需要在info.plist中配置对应的权限,才能在代码中使用:
```
NSBluetoothPeripheralUsageDescription 访问蓝牙
NSCalendarsUsageDescription 访问日历
NSCameraUsageDescription 相机
NSPhotoLibraryUsageDescription 相册
NSContactsUsageDescription 通讯录
NSLocationAlwaysUsageDescription 始终访问位置
NSLocationUsageDescription 位置
NSLocationWhenInUseUsageDescription 在使用期间访问位置
NSMicrophoneUsageDescription 麦克风
NSAppleMusicUsageDescription 访问媒体资料库
NSHealthShareUsageDescription 访问健康分享
NSHealthUpdateUsageDescription 访问健康更新
NSMotionUsageDescription 访问运动与健身
NSRemindersUsageDescription 访问提醒事项
```
如果不配置相关权限会出现崩溃的情况,调用系统相册、相机功能等会遇到闪退的情况,描述如下:
>
This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSPhotoLibraryUsageDescription key with a string value explaining to the user how the app uses this data.
## 解决办法
为了解决这种情况,在info.plist中配置相关权限,如下:
会发现这些权限配置的描述我发现是可以设置为空的,苹果默认有一段文字提示的,,模拟器真机运行都没有问题。
##上传审核问题
接下来开开心心提交应用到iTunes Connect ,显示构建版本“正在处理”后直接消失,上传了多次都一样的结果,为什么呢?
什么提示也不给,后来无意中看了下邮件,结果真给发了邮件提醒的。这个账号一般使用公司的邮箱申请的。
如果不去看的话都找不到原因。value不留空时,提交应用到iTunes Connect 时,显示构建版本“正在处理”后构建成功。现在等待审核了。
>注意:value值不能为空!