iOS10适配之权限Crash问题的完美解决方案

2022-10-21,,,,

这篇文章主要为大家详细介绍了iOS10适配权限Crash问题的完美解决方案,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

升级 iOS 10 之后目测坑还是挺多的,记录一下吧,看看到时候会不会成为一个系列。

直入正题吧

今天在写 Swift 3 相关的一个项目小小练下手,发现调用相机,崩了。试试看调用相册,又特么崩了。然后看到控制台输出了以下信息:

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 文件添加一个 NSPhotoLibraryUsageDescription的 key,然后添加一个描述。

解决方案

1.在项目中找到info.plist文件,右键点击以 Source Code形式打开
2.添加以下键值对,这里以 PhotoLibrary 作为例子

 <key>NSPhotoLibraryUsageDescription</key>
 <string>此 App 需要您的同意才能读取媒体资料库</string>

注意,key 是绝对不能写错的,
而 value 也就是<string></string>你可以随意写

目测所有需要的权限描述都会在 iOS 10 beta里面crash,不用怕,控制台会有输出的,自行添加就 OK,我另外附送几个 key/value 给你们

 <key>NSCameraUsageDescription</key> 
 <string>cameraDesciption</string>

 <key>NSContactsUsageDescription</key> 
 <string>contactsDesciption</string>

 <key>NSMicrophoneUsageDescription</key> 
 <string>microphoneDesciption</string>

嗯,然后 clean 一下,重新运行。

当然我比较推荐的做法是直接
info.plist 还是用 Property List 的形式,然后点击添加, 就是滑动到最后一个 item 会出现一个小加号
输入 Privacy 可以迅速定位到这一权限系列,找到你需要的权限,修改后面的 value 就可以了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持北冥有鱼。

您可能感兴趣的文章:

  • 查看iOS Crash logs的方法
  • iOS Crash常规跟踪方法及Bugly集成运用详细介绍
  • iOS开发之WKWebViewJavascriptBridge Xcode9中导致crash的解决
  • iOS App连续闪退时上报crash日志的方法详解
  • 查看iOS已上架App的Crash信息定位、应对处理方式的实例
  • iOS Crash文件分析方法汇总
  • iOS开发笔记之键盘、静态库、动画和Crash定位
  • iOS监控笔记之启动crash
  • iOS中程序异常Crash友好化处理详解

《iOS10适配之权限Crash问题的完美解决方案.doc》

下载本文的Word格式文档,以方便收藏与打印。