【问题标题】:Crashed: com.apple.root.default-qos SIGABRT ABORT崩溃:com.apple.root.default-qos SIGABRT ABORT
【发布时间】:2018-04-15 19:18:04
【问题描述】:

在我的应用中,我使用 crashlytics,它经常收到一份崩溃报告。这是崩溃:

com.apple.root.default-qos SIGABRT ABORT 0x00000001907b7d74

我正在从服务器下载照片,为此我在 info.plist 中使用了以下代码

<key>NSPhotoLibraryAddUsageDescription</key>
<string>Need to save photos</string>

但我经常收到错误 CRASHING_DUE_TO_PRIVACY_VIOLATION + 682。

【问题讨论】:

标签: ios objective-c swift cocoa-touch crashlytics


【解决方案1】:

看看How do I prevent a WKWebView from presenting the Camera modal if a user has denied access to the camera? 特别是因为TCCAccessRequest_block_invoke_ 之后的标识符(我相信它是一个内部常量)在您的情况下也是2.80。简短的回答是:NSMicrophoneUsageDescription

【讨论】:

  • 我没有在我的应用程序中使用任何相机。我只使用访问照片库。为此,我在 info.plist 中添加了照片库权限。是否必须在不使用摄像头或麦克风的情况下添加 NSMicrophoneUsageDescription。
  • 麦克风权限有时会出现在意想不到的地方,例如使用可以录制视频的相机。如果您的应用中有任何网络视图或SFSafariViewController,并且用户可以通过这种方式使用相机,您可能需要麦克风权限。我不知道您还需要它作为照片库的任何情况,但它可能是可能的。将其包含在您的 Info.plist 中几乎没有什么坏处。它可以解决您的崩溃问题,如果不是这样,将永远不会提示用户。
  • 谢谢!当您切换到视频时,它会因缺少 NSMicrophoneUsageDescription 键而崩溃。
【解决方案2】:

尝试添加这个,

隐私 - 照片库使用说明

指定您的应用访问用户照片库的原因。详情请见NSPhotoLibraryUsageDescription

【讨论】:

  • NSPhotoLibraryAddUsageDescription需要保存照片 我已经提到了上面的代码,现在我添加了隐私 - 照片库使用说明,用于保存照片。够了吗……这个
  • 隐私 - 照片库使用说明获取所有照片库相关内容的权限。所以根本不需要 NSPhotoLibraryAddUsageDescription。甚至 NSPhotoLibraryAddUsageDescription 添加到 iOS 11,因此它可能会在 iOS 11 之前产生问题。
  • 我收到此错误,应用程序的 Info.plist 必须包含一个 NSPhotoLibraryAddUsageDescription 键,其字符串值向用户解释应用程序如何使用此数据。
猜你喜欢
  • 2023-03-17
  • 1970-01-01
  • 2015-11-23
  • 1970-01-01
  • 2014-07-13
  • 1970-01-01
  • 2015-03-12
  • 1970-01-01
  • 2018-02-01
相关资源
最近更新 更多