求助!3.3.2 打包Android,上线后大量native崩溃,有Retrace信息

求助帖!!!android上线测试,sdk抓到大量不同类的native崩溃,各种机型各种android版本都有。能力有限retrace信息无法确定原因,都指向libcocos.so,网上查了好久基本查不到有用的信息,官方能帮忙看看可能原因吗?

  • Creator 版本: 3.3.2

  • 目标平台: Android

  • 重现方式:无稳定复现方式,自测偶现闪退情况。以下截图为上线后,性能监控sdk抓到的崩溃信息

  • 崩溃信息:







篇幅原因,只上传了崩溃率最高的几张截图

@505113236 若要准确定位到哪个文件的哪行崩溃,麻烦用你们上线前的so,带调试信息的。
用ndk下的tool-chains, 有个工具叫 addr2line, 把对应的pc地址转换成崩溃的位置;release版本看到的崩溃不一定是实际崩溃位置。
另外看到有一个可能是v8的问题,你们退出游戏的时候有杀进程?没有的话杀下进程应该就可以了,如果有执行杀进程操作,麻烦把AndroidManifest.xml这个文件上传下,谢谢

感谢回复~
有几个点没太看懂,麻烦确认下:

  1. 【release版本看到的崩溃不一定是实际崩溃位置】,按照sdk的文档说明,截图中的信息是【上传符号表解析后展示的为Retrace,即经过符号化之后的堆栈】,这个是否能确定就是实际崩溃位置呢?

  2. 【带调试信息的so】是指,需要重新打一个debug包,解压缩获得吗?

  3. 【对应的pc地址】是指,截图上每一行的这段吗?image

  4. 【退出游戏杀进程】,目前没有推出游戏,只有杀进程一种方式,所以是需要上传清单文件对吧,这个我私聊给您。


目测有个spine问题 在添加spine的地方多测试几下吧
其他的就如2楼老兄所说,使用ndk工具查真实崩溃位置,网上一搜就都有方法了


按照两位提供的建议,查了一下ndk的addr2line的用法,解析出来的貌似和retrace信息一致,但是这些貌似信息不足解决问题,native崩溃产生原因还是不明确。。。


image

利用 objdump命令,查到对应地址的指令,也找到对应的cpp代码。
可能是不理解指令含义,也不熟悉cpp逻辑,还是没能确定崩溃是如何产生的。




spine相关的也是一脸懵,真的要去补汇编了吗 :joy:


spine这个找到了官方的修复贴子,和retrace信息相符