ios - 切换隐私设置将杀死应用程序

我有一个使用 iPhone 通讯录的应用。在 iOS 6 中,第一次尝试时会提示用户进行联系人访问。此时,用户可以点击“允许”或“不允许”。问题是当用户将应用程序设置为后台时,然后导航到设置->隐私->联系人以切换我的应用程序的联系人隐私设置。切换后,我可以在控制台上看到我的应用:

Application 'UIKitApplication:com.myApp' exited abnormally with signal 9: Killed: 9

我在 Apple 的文档中找不到任何相关信息。有谁知道防止这种情况的方法?这是设计好的吗?或者这是苹果的错误?

最佳答案

操作系统发送一个不是崩溃的 SIGKILL - Apple 关于 iOS6 隐私的 session 说:

  • 如果权限发生变化,应用程序将退出。
  • 如果已注册,则会调用后台任务到期处理程序
  • 然后iOS 会终止该应用程序。

WWDC 2012 Session Videos: Privacy Support in iOS and OS X

过期处理程序:beginBackgroundTaskWithExpirationHandler

我没有办法解决这个问题。

https://stackoverflow.com/questions/12522574/

相关文章:

objective-c - 处理由于 iOS 通讯录 API 中的链接卡导致的重复联系人

ios - 如何在 iOS 中使用 'Container View'?

objective-c - 如何在 Objective-C 中命名常量?

iphone - Objective-C - 将 float 转换为字符串的其他方法

ios - 带有 AVPlayer 的多个视频

objective-c - 为什么不鼓励使用伞式框架?

iphone - Objective-C 实现文件中方法名后的分号

ios - UIImagePickerController 相机 View 在 iOS 8 上奇怪地

objective-c - 使用 JSON (iOS) 的 Cocoa 错误 3840

objective-c - 在子类中覆盖初始化