我有奇怪的问题,当我通过任务管理器关闭我的应用程序时,我的应用程序崩溃了
int retVal = UIApplicationMain(argc, argv, nil, @"AppDelegate");
抛出“线程:1信号SIGKILL”错误,我根本无法重新打开我的应用程序。其他时候它运作得很好。 请有人帮我解决这个问题。 我是cocos-2d的新手所以请保持温柔:(,谢谢。
答案 0 :(得分:4)
据我所知,这是正常的预期行为。我认为,看起来很奇怪的原因是当你从Xcode运行时,你的可执行文件被附加到Xcode中的调试器,因此它有时会阻止执行(例如,在崩溃或SIG_KILL场景中)。这只是给你一个提示,当你使用任务栏关闭应用程序时苹果正在做什么...它将SIGKILL发送到进程: - )
编辑:对于好奇,我测试了一点,发现applicationWillTerminate:
没有被调用,这实际上是作为应用程序消费者的鼓励。你真的是SIGKILLing这些东西。我认为这意味着(使用后台处理工作流程)调用该方法的唯一情况是opt out of background execution。好消息是,为了以这种方式杀死应用程序,您需要先将其移至后台,因此拆解的规范位置是applicationWillResignActive:但是您知道...
编辑:避免再次出现问题的说明: