应用委托的 applicationWillTerminate 方法在用户关闭应用或关闭设备时不会被调用。
- 论坛
- 应用委托的 applicationWillTerminate 方法在用户关闭应用或关闭设备时不会被调用。
13 浏览
匿名的
0 Comments
当用户关闭应用程序或关闭设备时,不会调用应用程序委托的applicationWillTerminate方法。
这个问题的原因是当应用程序被杀死时,我们无法在应用程序中收到任何通知。应用程序只会收到一个信号9,并且内核会清理进程,包括所有的线程。
解决方法是重写一些信号处理程序(TERM最有可能),重写-applicationWillTerminate:方法,并记录到文件中。确保在写入后刷新或关闭文件。然后关闭设备。我认为文件仍然是空的...你可以使用“a”模式打开文件,并使用我的MPLog库。它在每个日志行后刷新日志到磁盘,并且还可以告诉你当前所在的线程。
我刚刚在调试器运行时进行了测试,看起来是SIGKILL(至少这是Xcode告诉我的..)。这意味着我没有机会了。