Unity移动应用如何在Bugly上查看崩溃堆栈
发布日期:2021-06-30 19:35:25
浏览次数:2
分类:技术文章
本文共 1623 字,大约阅读时间需要 5 分钟。
文章目录
一、使用Bugly对移动应用进行崩溃监控
Unity
项目中接入了腾讯的Bugly
,通过Bugly
后台,我们可以对移动应用进行异常监控、崩溃分析等。
Bugly官网:
腾讯 Bugly,是腾讯公司为移动开发者开放的服务之一,面向移动开发者提供专业的 Crash 监控、崩溃分析等质量跟踪服务。Bugly 能帮助移动互联网开发者更及时地发现掌控异常,更全面的了解定位异常,更高效的修复解决异常。
二、崩溃类型
1、Java崩溃
这种情况我们可以比较完整的看到java
的调用堆栈,比较好定位问题。
2、Native崩溃
这种情况的奔溃,如果没有上传符号表,我们看到的堆栈信息就是这样的
蓝色的部分就是崩溃的地方,没有符号表,我们是看不到具体是哪个文件哪一行异常。三、Bugly上传符号表解析崩溃堆栈
1、关于符号表
符号定义的本质是:指被分配了存储空间。如果是函数名则指代码所在区;如果是变量名则指其所在的静态数据区。
所有定义的符号的值就是其目标所在的首地址。 符号表是内存地址与函数名、文件名、行号的映射表。符号表元素如下所示:<起始地址> <结束地址> <函数> [<文件名:行号>]
2、上传符号表
根据上面的信息,是在libunity.so
中崩溃的,我们需要上传libunity.so
的符号表。
这个libunity.so
是Unity
的引擎库,它的符号表在Unity
安装目录中,具体位置如下:
Android
或iOS
)、编译后端(比如il2cpp
或mono
)、发布环境(比如Development
或Release
)。 在Mac上,符号表的路径是: /Applications/Unity/PlaybackEngines/AndroidPlayer/Variations/mono/Release/Symbols
/Applications/Unity/PlaybackEngines/AndroidPlayer/Variations/il2cpp/Release/Symbols
在windows上,符号表的路径是: C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Symbols\armeabi-v7a\libunity.sym.so
C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\il2cpp\Release\Symbols\armeabi-v7a\libunity.sym.so
我们将符号表上传到Bugly
上
3、Native崩溃堆栈解析
上传完符号表,我们就能看到清晰的调用堆栈了,如下
四、通过NDK的addr2line解析崩溃堆栈
我们也可以自己通过NDK
的addr2line
工具,配合符号表解析崩溃堆栈。
NDK
的addr2line
工具,NDK
目录中有个toolchains
文件夹,里面有各个CPU
平台的工具 我们搜索一下addr2line.exe
,如下,由于我是Android arm
架构的,所以使用arm-linux-androideabi-addr2line.exe
进入arm-linux-androideabi-addr2line.exe
所在的目录,将符号表拷贝到当前目录 假设我们要查00e437cc
这个地址的堆栈,通过如下命令行 arm-linux-androideabi-addr2line.exe -f -C -e libunity.sym.so 00e437cc可以看到,输出的堆栈信息为
__gnu_cxx::__verbose_terminate_handler()??:?
与上面bugly
自动解析的结果一致
转载地址:https://linxinfa.blog.csdn.net/article/details/107681049 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
表示我来过!
[***.240.166.169]2024年04月18日 10时25分36秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
NLP 之 Perplexity困惑度
2019-04-30
tensor/矩阵/图片等更换通道,调整size
2019-04-30
本地和colab 中 改变tensorflow的版本
2019-04-30
Camera-ready ddl
2019-04-30
CUB-200鸟类数据集
2019-04-30
Python反射机制
2019-04-30
YAPF —— Python代码格式化工具
2019-04-30
UGC 用户产生内容
2019-04-30
ranger
2019-04-30
slurm
2019-04-30
xfce4
2019-04-30
xrdp
2019-04-30
Raft算法
2019-04-30
Python计算文本BLEU分数
2019-04-30
swap内存(linux)
2019-04-30
人脸au
2019-04-30
torch.distributed 分布式
2019-04-30
PyPy
2019-04-30
MATLAB与CUDA
2019-04-30
Linux png转jpg (convert命令)
2019-04-30