iOS Termination Reason: Namespace SPRINGBOARD, Code 0x8badf00d(Apple Crash Log)

App Store审核驳回类型是Guideline 2.1 - Performance - App Completeness,并且下面附件不是截图而是crashlog-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX.txt。
如果你的线上App Crash记录工具没有记录到对应的Crash记录,不知道当时审核时闪退的具体原因,可能需要通过下面的方式去手动解析Crash报告。
单看驳回原因是因为启动时闪退(unable to review your app as it crashed on launch),But,真机模拟器都试了,一直都没能重现这个启动后闪退的情况。仔细检查过代码,启动时并没有什么耗时操作。
1、审核驳回的原因说明如下

发件人 Apple
2. 1 Performance: App Completeness Guideline 2.1 - Performance - App Completeness We were unable to review your app as it crashed on
launch. We have attached detailed crash logs to help troubleshoot this
issue. Next Steps To resolve this issue, please revise your app and
test it on a device to ensure it will launch without crashing.
Resources For information on how to symbolicate and read a crash log,
please review Tech Note TN2151 Understanding and Analyzing
Application Crash
Reports.

2、点开说明后面附上的文档链接,里面是解读如何分析App的Crash报告的,就是上面的txt文件的内容。
3、文档里面介绍了如何解析Crash报告(Symbolicating Crash Reports),如何获取符号表文件(dSYM文件),如何使用Xcode解析Crash报告(尝试了但没操作成功),如何使用atos命令解析Crash报告(Symbolicating Crash Reports With atos)。
4、重点说一下如何使用atos命令解析这个Crash报告。
5、报告内容的一部分截图。
如何填写atos命令中地址
5、文档中是这么写的例子。

Listing 1 Example usage of the atos command following the steps above, and the resulting output.
$ atos -arch arm64 -o TheElements.app.dSYM/Contents/Resources/DWARF/TheElements -l 0x1000e4000 0x00000001000effdc
-[AtomicElementViewController myTransitionDidStop:finished:context:]

6、其实就是$ atos -arch arm64 -o <dSYM文件路径>/Contents/Resources/DWARF/<工程名称> -l <地址1> <地址2>。
7、如果填写无误,atos命令执行后,就会解析出可读内容,类似于下面。

-[AtomicElementViewController myTransitionDidStop:finished:context:]_block_invoke (in <工程名称>) (AtomicElementViewController.m:151)

8、atos命令解析的坑点就是需一行一行解析,每次执行完一次命令,需要替换上一次命令中的<地址1>和<地址2>。

猜你喜欢

转载自blog.csdn.net/Mr17Liu/article/details/88891440