记录腾讯bugly关于符号表的配置

Bugly


bugly的熟练使用,可以帮助移动开发迅速定位线上bug,帮助解决问题。在使用过程中,我们需要知道什么是符号表,为什么要配置符号表。

符号表


符号表是内存地址与函数名、文件名、行号的映射表。符号表元素如下所示:

 <起始地址> <结束地址> <函数> [<文件名:行号>]

为什么要配置符号表

为了能快速并准确地定位用户APP发生Crash的代码位置,Bugly使用符号表对APP发生Crash的程序堆栈进行解析和还原。Bugly提供了自动和手动两种方法配置iOS符号表,这里只介绍手动配置,自动配置后会影响编译时间。

配置符号表前的准备工作


1.下载Bugly iOS符号表工具

2.找到Bugly中对应UUID的编译后的包的dSYM文件;

3.通过使用下载下来的工具生成符号表文件;

如何找到dSYM文件

在bugly的崩溃处理中找到对应的crash版本

然后选择XCode - Window - Organizer


Show in Finder 可以找到当时上传你的正式编译包,显示包内容就可以找到dSYM文件,通过命令一下命令可以查看dSYM的UUID,用来对比UUID是否一致:

xcrun dwarfdump --uuid /Users/name/Desktop/Test.app.dSYM

利用工具生成符号表

在使用工具前记得更改工具目录下的 settings.text 文件,填写相应的id和key,其值可以在bugly的产品设置里获取


配置完成后,就可以通过命令生成符号表文件了

cd /Users/name/Downloads/buglySymboliOS2.4.3

java -jar buglySymboliOS.jar -i /Users/name/Desktop/CanZone.app.dSYM

最后在bugly的平台上,上传符号表就大功告成。

可以在对应的crash中看到更多的信息。

推荐阅读更多精彩内容