使用symbolicatecrash工具符号化Crash日志
2023-04-18 15:52:43 时间
对于打包上线的APP,或者打包测试的APP,出现了崩溃并不能方便的把手机链接到电脑使用XCode自动符号化,此时手动符号化就是重要的选项。
1.查找符号化工具symbolicatecrash
find /Applications/Xcode.app -name symbolicatecrash -type f
2.添加环境变量
export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer
3.把Dsym文件,crash文件,symbolicatecrash文件放到桌面同一个文件夹下
4.确认当前崩溃.crash文件与拿到的Dsym文件是否属于同一个App版本
获取符号文件的UUID: dwarfdump --uuid dSYM文件路径
对比崩溃日志中的UUID。 在崩溃.crash文件Binary Images:段中做对比。
5.执行符号化
./symbolicatecrash CrashName.crash AppName.app.dSYM > result.crash
脚本如下:
#!/bin/sh # 使用方式:sh _symbolCrash.sh CrashName.crash路径 AppName.app.dSYM路径 # 保存外部传参 paramNum=$# crashPM1=$1 symbolPM2=$2 readonly location=`pwd` tempPath="" #1.增加环境变量 export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer #2.查询符号化工具symbolicatecrash tool=`find /Applications/Xcode.app/Contents -name symbolicatecrash -type f` echo "查询到符号工具路径为: $tool" #3.查询崩溃文件中UUID uuid=`dwarfdump --uuid $symbolPM2` echo "DSYM文件中UUID为: ${uuid}" #4.符号化结果, crash文件路径 symbol符号路径先后顺序不能变 rm ~/Desktop/Result.crash ${tool} $crashPM1 $symbolPM2 > ~/Desktop/Result.crash open ~/Desktop/Result.crash
使用方法:
进入到脚本所在的目录
打开终端,在终端输入脚本指令: sh _symbolCrash.sh
然后依次拖入Crash文件,Dsym文件到终端
点击enter, 等待输出结果。
相关文章
- RxJava 容易忽视的细节: subscribeOn() 方法没有按照预期地运行
- [066]Camera360录像预览滞后
- 探究 Go 源码中 panic & recover 有哪些坑?
- [067]perfetto进阶使用
- 基于el-button的RibbonControl
- Vue+Golang接入KeyCloakVue+Golang接入KeyCloakVue+Golang接入KeyCloak
- [069]PLL_CLK引发的降帧问题
- Docker运行WordPress通过Nginx反向代理开启HTTPS绑定域名
- 国内首家!腾讯云正式成为 FinOps 基金会顶级会员
- Flink PartitionerFlink Partitioner
- DockerCompose运行Grafana集成Prometheus+node-exporter+cadvisor监控多个服务器DockerCompose运行Grafana集成Prometheus+n
- wails Go+vue/angular/react编写桌面GUI客户端wails Go+vue/angular/react编写桌面GUI客户端安装wails构建项目项目结构运行程序框架的重点介绍
- iOS 接入 HTTPDNS
- GIT仓库、源码管理服务器gitea的安装、htttps访问
- skywalking根据文本信息找到对应的请求
- skywalking搭建
- 二叉树最大宽度与leetcode662的二叉树最大宽度
- 字符串所有排列组合暴力递归
- 使用arthas定位耗时CPU的线程
- 0-1背包问题暴力递归