Dir*_*nry 6 settings privacy uiapplicationdelegate ios
我的iOS应用程序需要有权访问图片才能正常运行.
当我发现以下情况时,我正在测试我的应用如何响应隐私设置中的更改:每次我转到设置应用并更改我的应用的隐私设置(打开或关闭),我的应用程序被杀死没有任何警告.
我在设备的控制台中找到了这些日志:
Apr  8 15:01:50 iPad Preferences[5924] <Warning>: ########### Quitting application (xxx) in response to privacy settings change.
Apr  8 15:01:50 iPad com.apple.launchd[1] (UIKitApplication:xxx[0xc7cb][6039]) <Notice>: (UIKitApplication:com.edupad.itoochdev[0xc7cb]) Exited: Killed: 9
Apr  8 15:01:50 iPad backboardd[30] <Warning>: Application 'UIKitApplication:xxx[0xc7cb]' exited abnormally with signal 9: Killed: 9
虽然我applicationWillTerminate:在我的应用程序委托中实现,但在应用程序被杀之前似乎没有被调用.
我找不到任何相关的文档,说明在应用程序被杀之前我应该实现什么来获取通知.我有什么想法可以解决这个问题吗?
PS 1:我知道我可以实现,applicationDidEnterBackground:但我想在案例中提供不同的用户体验(A)用户只需快速切换到设置应用程序以更改隐私设置或(B)用户想继续前进并赢得'暂时回到应用程序
PS 2:如果您正在测试此类事情,请不要使用通过Xcode启动的应用程序,否则您将使用sigkill崩溃.
通常,如果您希望在应用程序被终止之前保存状态或清理代码,则需要定义 block beginBackgroundTaskWithExpirationHandler。
您可以查看 Apple 的 WWDC 2012 文档,其中讨论了 iOS6 及以后更改隐私设置时会发生什么情况。简而言之,它表示beginBackgroundTaskWithExpirationHandler在发送 SIGKILL 之前调用它,以便您可以在那里处理清理代码。
Stack Overflow 上还有另一个类似的讨论。如果有人可以找到它并将其链接到此处,将会很有帮助。
| 归档时间: | 
 | 
| 查看次数: | 602 次 | 
| 最近记录: |