我有一个基于 Android NDK 的游戏,我们部分使用开源引擎 (Cocos2d-x) 的部分构建该游戏。大多数引擎都是自定义的,但对于 OpenGL 上下文设置、Java 桥接和事件等内容,我们发现使用现成的解决方案很方便。
快进到今天,我们遇到了稳定性问题,cocos2d-x 不再维护,我们遇到了一些严重的稳定性问题。我花了大约 1 周的时间对此进行调试,但未能找到追踪它的方法。这是我尝试过的
崩溃的方式差异很大
我还想说,该应用程序在除 Android 之外的所有其他平台上都非常稳定,并且我们 95% 的代码都在共享 C++ 中。我什至注释掉了在 C++ 中实际启动我们的代码,但游戏仍然在黑屏上崩溃,只有开箱即用的引擎代码。
我正在考虑移植到 SDL,这样引擎至少会得到支持,但如果有人有任何关于追踪此类事情的提示,我会很高兴听到它。
你可以检查这个链接,它在记忆中的讨论中 https://github.com/google/sanitizers/wiki/AddressSanitizerInHardware