iOS 解析闪退信息

news/2024/11/8 15:12:58/

记录通过xxx.app.dSYM文件解析16进制闪退信息

因为运营给到的闪退信息是.txt文本,而不是导出的.carsh文件,同时给到了出包的xxx.app.dsYM文件,为了查看具体的闪退日志,只能通过命令行转才能查看原因。(如果同时有给到.crash文件、.app文件、.app.dsYM文件就可以直接通过Xcode自带的symbolicatecrash工具批量解析16进制闪退文件,导出到指定的文件)

由于只有如下16进制闪退信息跟.app.dsYM文件,利用如下命令逐一转成可读闪退信息:

atos -o ryxsg.app.dSYM/Contents/Resources/DWARF/ryxsg -arch arm64 -l 0x0000000104b04000 0x0000000104b1d8bc

atos -o ryxsg.app.dSYM/Contents/Resources/DWARF/ryxsg -arch arm64 -l 后面拼接16进制闪退信息

注:需要替换ryxsg为自己的对应.dsYM文件名

16进制闪退信息如下:

0
libdispatch.dylib
0x000000018e7eef1c 0x000000018e786000 + 429852
1
libdispatch.dylib
0x000000018e7b823c 0x000000018e786000 + 205372
2
ryxsg
0x0000000104e190bc 0x0000000104b04000 + 3231932
3
ryxsg
0x0000000104b1d8bc 0x0000000104b04000 + 104636
4
ryxsg
0x0000000105cc23b8 _ZN7plcrash5async24dwarf_cfa_state_iteratorIyxE4nextEPjPNS0_28plcrash_dwarf_cfa_reg_rule_tEPy + 2404792
5
UIKitCore
0x000000019146d3cc 0x0000000190923000 + 11838412

注意:ox表示闪退日志的开头,上面闪退日志,给到的需要将后面一段ox开头放在前面

比如这一段16进制闪退日志:0x0000000104e190bc 0x0000000104b04000 + 3231932,解析的时候需要将后面的 0x0000000104b04000放前面空格后再加上前面那一段16进制0x0000000104e190bc

示例如下:

atos -o ryxsg.app.dSYM/Contents/Resources/DWARF/ryxsg -arch arm64 -l 0x0000000104b04000 0x0000000104e190bc

解析结果如下:

-[JiHeSdk JiHeapplication:didReceiveRemoteNotification:fetchCompletionHandler:] (in ryxsg) (JiHeSdk.m:0)

http://www.ppmy.cn/news/1007897.html

相关文章

uniapp 路由跳转方式

export function goBack(index, url) {if (index 1) { // 关闭当前页,返回上一页面或多级页面。uni.navigateBack({delta: url,animationType: pop-out,animationDuration: 300});} else if (index 2) { // 保留当前页,跳转到非tabbar页面,…

C语言笔试训练【第三天】

大家好,我是纪宁。 今天是C语言笔试训练的第三天,大家加油! 第一题 1、已知函数的原型是: int fun(char b[10], int *a) ,设定义: char c[10];int d; ,正确的调用语句是( &#xf…

Stability AI旗舰图像模型 SDXL1.0发布,AI绘画进入新的时代

Stability AI于7月26号开源了SDXL1.0文生图模型,要知道距离SDXL0.9开源发布也不过一个月,只能说AI发展日新月异。 根据官网介绍,SDXL1.0经过迭代更新,已经是目前世界上最好的图像生成模型 官网根据Discord上的几代实验模型和外部测试&#…

【0805作业】Linux中 AB终端通过两根有名管道进行通信聊天(半双工)(全双工)

作业一:打开两个终端,要求实现AB进程对话【两根管道】 打开两个终端,要求实现AB进程对话 A进程先发送一句话给B进程,B进程接收后打印B进程再回复一句话给A进程,A进程接收后打印重复1.2步骤,当收到quit后&am…

跨域+四种解决方法

文章目录 一、跨域二、JSONP实现跨域请求三、前端代理实现跨域请求四、后端设置请求头实现跨域请求五、Nginx代理实现跨域请求5.1 安装Nginx软件5.2 使用Ubuntu安装nginx 本文是在学习课程满神yyds后记录的笔记,强烈推荐读者去看此课程。 一、跨域 出于浏览器的同…

常用消息中间件对比

Kafka 1.基于Pull的模式来处理消息消费 2.追求高吞吐量 3.一开始的目的就是日志收集和传输 4.0.8版本开始支持复制,不支持事务,对消息的重复、丢失、错误没有严格要求、适合产生大量数据的互联网服务的数据收集业务. RabbitMQ RabbitMQ是使用Erlang语…

Linux软件实操

systemctl命令 Linux系统的很多内置或第三方的软件均支持使用systemctl命令控制软件(服务)的启动、停止、开机自启 systemctl start(启动) 或 stop(关闭) 或 status(查看状态) 或 enable(开启开机自启) disable(关闭开机自启) 服务名: 控制服务的状态 系统内置的服务: Netwo…

第一课-前提-Stable Diffusion 教程

学习 SD 的前提是电脑配置! SD 参考配置: 建议选择台式机 i5 CPU, 内存16GB,N卡 RTX3060, 8G显存以上的配置(最低配) 在此基础上的配置越高越好。 比如,cpu i7 更好,显卡能有 RTX4090 更好,32显存要能有最好,嘿嘿嘿。 如何查看自己的显卡配置? Win+R 输入 “dxdiag…