记录一个iOS无法找到堆栈信息的崩溃修复

崩溃提示

2023-06-28 21:14:46.962456+0800 -[UIDynamicCatalogColor length]: unrecognized selector sent to instance 0x6000073292c0

崩溃如下图所示
记录一个iOS无法找到堆栈信息的崩溃修复_第1张图片

记录一个iOS无法找到堆栈信息的崩溃修复_第2张图片

思路,既然我们无法通过调用的堆栈信息查找,那就试试通过崩溃对象的内存地址查看该对象的详细信息
如图,点击该图标,查看内存分布
记录一个iOS无法找到堆栈信息的崩溃修复_第3张图片

在左侧输入框中输入崩溃对象的内存地址,定位到崩溃对象
记录一个iOS无法找到堆栈信息的崩溃修复_第4张图片

顺着持有关系链,找到一个button ,如图,点击展开符号,红框中所示,查看关系链的更上一级
记录一个iOS无法找到堆栈信息的崩溃修复_第5张图片

展开的关系链如图

记录一个iOS无法找到堆栈信息的崩溃修复_第6张图片

可以知道我们崩溃的对象在某个cell 中,并被该cell的_shareButton 持有,
这样我们就可以定位问题在PaperHotCommentCell中的shareButon中了

然后再结合 崩溃信息
[UIDynamicCatalogColor length]: unrecognized selector sent to instance 0x6000073292c0

是对一个颜色取长度了,这我们就猜测到是设置将标题设置成了颜色

最后修改如下
记录一个iOS无法找到堆栈信息的崩溃修复_第7张图片

你可能感兴趣的:(ios)