cocos3.6.1-iOS退出app回收资源导致崩溃

cocos3.6.1导出来的demo项目,在项目中使用exit(0)主动退出app,就会导致cocos引擎内部回收资源崩溃(貌似在2.x有过这个bug,后面被修复了),不知道为什么3.x又有这个问题。

没有在applicationWillTerminate的回调里调用AppDelegateBridge的applicationWillTerminate方法也会崩溃

这样会导致bugly采集到的崩溃率很高

有没有大佬带带

具体咋操作的?方便给个demo?

直接用cocos creator导出的demo 在项目中的Appdelegate的didFinishLaunchingWithOptions增加如下主动退出app的代码模拟app退出即可触发该崩溃:

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(6 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
exit(0);
});

使用下面的Appdelegate.mm文件即可重现该崩溃
AppDelegate.mm.zip (2.5 KB)

https://github.com/cocos/cocos-engine/issues/13889
已经建了 issue 进行处理了

好的 感谢:pray:

主动杀死app会进入下面这个回调,也会导致cocos引擎回收崩溃

  • (void)applicationWillTerminate:(UIApplication *)application {
    [[SDKWrapper shared] applicationWillTerminate:application];
    [appDelegateBridge applicationWillTerminate:application];
    }

你好,问题已经在 3.7.0 及以上版本解决。用户可以参考修复 PR https://github.com/cocos/cocos-engine/pull/14141 自定义引擎解决。