在进行集成腾讯bugly的时候,有一个步骤就是符号表文件的上传,其上传方式有两种:一种是自动上传,另外一种是手动上传。
为方便起见,就想着实现自动上传符号表文件。但是看到自动上传的时候,感觉需要做好多配置,有些还看不懂,就选择了手动上传符号表文件(这里,我详述了怎么手动上传符号表文件的具体流程和注意点)。但是集成的APP更新了几个版本之后,感觉手动上传还是很麻烦,有点不甘心,于是就尝试了自动上传符号表的的方法。
自动上传符号表文件还得看【官方文档】,回头再看一次的时候,发现配置自动上传符号表文件还更简单。我反思了一下,为啥之前整了好几遍就是搞不成呢,总结了一下原因:之前在做这些配置的时候,就给自己设置了心里障碍(总想着这个很难,配置好麻烦),无形中给了自己设置了关卡,整个流程看都没看完,就直接看怎么实现手动上传符号表文件了。在读的读者,当你实现这个功能后,不妨花点时间反思一下。废话说了好多,直接开始自动上传的步骤吧:
一、下载和解压工具包
还是以官方文档为主,首先下载 自动配置符号表工具包,包里有两个文件【buglySymboliOS.jar、dSYMUpload. sh】,见下图:
二、配置Java运行环境(JRE或JDK版本需要>=1.6)
这个我已经配置好了,下面是查看配置好流程:
如果自己的电脑还没有安装,可以自行下载安装,这里有【Java下载安装的路径】,这里不做说明。
三、保存【buglySymbolIOS.jar】工具包
把工具包【buglySymbolIOS.jar】保存在用户主目录(Home)的bin目录下(没有bin文件夹,请自行创建),见下图:
注: 前往文件夹方式,见下图:
如果没有【bin】文件夹,就进入上一级【/Users/用户名/】,然后创建bin文件夹;如果不知道用户名,则进入再上一级/Users/】,然后一次查找。
四、配置Xcode编译执行脚本
基本过程,同官方文档,增加了一些,图片说明:
在Xcode工程对应Target的Build Phases中新增Run Scrpit Phase
打开工具包中的【dSYM_upload.sh】,复制所有内容,在新增的【Run Scrpit Phase】中粘贴
修改新增的Run Scrpit中的 为您的App ID,为您的App Key, 为App的Bundle Id,见下图:
1、项目Bundle Id获取:
2、腾讯Bugly的App ID 和App Key获取:
脚本默认在Debug模式及模拟器编译情况下不会上传符号表,在需要上传的时候,请修改下列选项
Debug模式编译是否上传,1=上传 0=不上传,默认不上传
UPLOAD_DEBUG_SYMBOLS=0
模拟器编译是否上传,1=上传 0=不上传,默认不上传
UPLOAD_SIMULATOR_SYMBOLS=0
至此,自动上传符号表脚本配置完毕,Bugly 会在每次 Xcode 工程编译后自动完成符号表配置工作。
五、测试
将脚本设置成在Debug模式及模拟器编译情况下可以上传符号表:
然后,写一个数组越界的的错误:
运行后直接报数组越界的闪退,这时候在【腾讯Bugly】的闪退记录里查看到错误信息:
这时候是不是看到了,解析完之后的堆栈信息。哈哈,大功告成!但是你会发现【bugly平台】提示没有上传符号表文件,要我们去上传,见下图:
但是我们已经将地址符号解析出来了,就不用去管它啦。
这时候,返回去看一下【腾讯bugly符号表文件手动上传】,会不会觉得麻烦了好多。
参考链接: