记Bugly崩溃查找过程unity-il2cpp

梦想游戏人
目录:
游戏开发

Bugly上面的崩溃,刚打开根本看不懂什么函数地什么堆栈

1…一开始想到的是把il2cpp的代码生成符号文件,上传到bugly 但是找了一大圈,并没有il2cpp的符号文件,debug版本的话 代码也不一样 毫无参考价值,

2…就算是找到了符号表 也看不懂,il代码变为cpp代码根本看不懂。

3….开始根据堆栈尝试还原,因为是内存错误,首先想到的是无效指针,或者大内存分配失败,通过可以制造崩溃,然后看bugly的堆栈信息是否吻合,如果吻合那么就证明是这里的调用堆栈的问题了。然后查起来就容易多了,

4….崩溃堆栈起始是_pthread_startXXXX,基本可以断定是我们开的线程里面出错,unity主线程的话会是UnityMain。

5…..代码里面只有网络部分是自己开的线程,重点审查代码,var x = new byte[1024*1024*1024] 开始逐个可能造成内存错误的代码块插入上述测试代码,开始测试

Scroll Up