iOS开发 手动上传bugly符号表文件
2022-04-26 本文已影响0人
我是卖报的小行家
崩溃处一脸懵逼,只知道有问题,但是具体定位不到崩溃点,这个时候借助bugly,上传bugly符号表文件,则可轻松定位到程序问题点
前提准备
1、下载符号表工具解压
符号表工具文件夹里包含:
符号表上传工具使用说明.doc
buglyqq-upload-symbol.jar
2、安装Mac版本的java环境
下载jdk8并且安装
本人之前的Java版本是1.16开始的,后面降到了1.8.
2.1 验证安装是否成功
打开终端 输入
java -version
#输出如下信息版本号为1.8.0_xxx,则正确:
#java version "1.8.0_311"
#Java(TM) SE Runtime Environment (build 1.8.0_311-b11)
#Java HotSpot(TM) 64-Bit Server VM (build 25.311-b11, mixed mode)
3、找到要上传的App对应的符号表dSYM文件
Xcode->window->organizer->Archives
找到对应的APP紧接着右键showinFinder->显示包内容->找到appdSYM文件
4.可以在桌面或其他地方新建一个文件夹,将前面准备好的buglyqq-upload-symbol.jar
和dysm包
放在一起,,cd到当前目录执行以下代码
java -jar buglyqq-upload-symbol.jar -appid <APP ID> -appkey <APP KEY> -bundleid <App BundleID> -version <App Version> -platform <App Platform> -inputSymbol <Original Symbol File Path> -inputSymbol <Original mapping File Path>
#tips:注意不包含<>
#参数说明
参数说明 -- Introduction for arguments
-appid APP ID of Bugly
-appkey APP Key of Bugly
-bundleid Android平台对应的是package name/iOS平台是Bundle Id
-version APP版本,需要和bugly平台上面看到的crash版本号保持对齐
-platform 平台类型包含三个选项 Android、IOS两个选项,注意大小写要正确
-inputSymbol 原始符号表[ios是dsym/android平台是debug so]所在文件夹目录地址
-inputMapping mapping所在文件夹目录地址[Android平台特有,ios忽略]
5.上传成功标志
##[info]retCode: 200 response message: {"statusCode":0,"msg":"success","uploadReqID":"ddsdsbe6sd7sd98ds5-6sdsdsdd7d-03f2-4f31-9d40-skdhdsfkdfhfd"}
但是
当我打开其中一条崩溃信息时候发现还是不能正常显示出错的地方,我查看符号表,发现是未上传,这下彻底蒙逼。。。
截屏2022-04-27 17.02.37.png
重点来了
app的UUID以及出错的UUID以及dsym的UUID是一致的
这个时候,解决之道:
1.先复制出 APP UUID
2.然后
Xcode->window->organizer->Archives
找到对应版本,点击右边的Download Debug Symbols,再
右键showinFinder->显示包内容->找到appdSYM文件
进去dsym文件夹,可以找到对应的UUID的dsym包然后
重复上述步骤4,上传新的uuid的dsym文件
,这个时候就OK了