ios 审核被拒,返回的崩溃日志进行分析处理

最近两天发布新版本至苹果市场,一不小心就被拒了,返回一大堆看不懂的崩溃日志。
屏幕快照 2019-01-04 下午12.00.12.png

点击去看后,更是一脸懵逼!!!

29301546580461_.pic_hd.jpg

看到这,内心是很崩溃的,初步看到:在iphone 12.1系统运行崩溃的,然后。。。然后就没然后了。这一堆内存地址,谁看得懂!!
好在经过查找一大堆资料,终于找到解决办法了。将苹果大佬给我们的文件进行符号化。废话不多说,现在开始一步步详细说明下,使用方法。


苹果xcode为我们提供了一个工具“symbolicatecrash”,通过这个工具可以帮助我们解决问题。

  1. 打开终端,输入以下命令,查找这个工具的文件路径
    find /Applications/Xcode.app -name symbolicatecrash -type f
    返回:
/Applications/Xcode.app/Contents/Developer/Platforms/WatchSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
/Applications/Xcode.app/Contents/Developer/Platforms/AppleTVSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash

注意啦:返回有4个地址,因为我这里是使用iphone手机开发,所以选择第三个,复制这个地址,使用快捷键'shift + command +G',前往文件夹,张贴、前往


屏幕快照 2019-01-04 下午2.03.13.png

各位老铁们,看到这个了吧!!拷贝这个工具,在桌面新建一个文件夹,取名“crash”,将这个工具,粘贴到里面去。

  1. 接下来进行第二个步骤。将审核被拒返回的txt文档下载下来,复制,张贴到这个新建文件夹中。文件名太长了,建议改下名字,我改成的是"applecrash.txt",如图所示


    屏幕快照 2019-01-04 下午2.08.48.png
  2. 找到.app.dSYM文件,这个文件是发布到appstore审核时的二进制文件里的一个包。开发工程项目:window ->organizer

    屏幕快照 2019-01-04 下午2.14.03.png

    找到这里,第一个应该就是最近发布的那个文件,点击选中,show in finder,再点击,查看显示包内容,这个时候,应该就找到我们所说的那个”
    .app.dSYM文件”
    屏幕快照 2019-01-04 下午2.20.34.png

    将这个文件,进行拷贝,张贴到桌面的crash文件夹里面,跟另外两个放在一起。

前面一切已经准备就绪了,下面就是放大招的时候了,将这个二进制文件进行符号化。

  1. 打开终端
    cd 把桌面的crash文件拖进来吧

  2. 输入最关键的命令:(以下这句是参考格式,根据要求合成最终命令)
    ./symbolicatecrash ./crash.txt ./MyAppName.app.dSYM > crash.log

这里的“crash.txt”,换成审核被拒时给你的日志,我的是"applecrash.txt"。这里的“MyAppName.app.dSYM ”,也要换成自己的,我的是“YMHPersonPort.app.dSYM"。"crash.log"也是自己随便取的名字,我取的是“crashlog.log”。

最后合成最终命令:
./symbolicatecrash ./applecrash.txt ./YMHPersonPort.app.dSYM >crashlog.log

  1. 这个时候,不出意外,终端返回这样一句“DEVELOPER_DIR" is not defined at xxxxxxxxxxxxxx”,不要紧的,那么我们就再次输入一句:
    export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer

  2. 再次重复输入第二个步骤合成的最终命令:
    ./symbolicatecrash ./applecrash.txt ./YMHPersonPort.app.dSYM >crashlog.log

5.回车,等待响应吧。。。。。。。老铁们,翻身农奴把歌唱!!!!!!惊喜就在那么一瞬间


屏幕快照 2019-01-04 下午2.44.27.png

这个都有了吧!!!那恭喜你,成功了,点击进去看看吧,一片神奇的青青草原着等你呢。

  1. 在里面,我可以很清楚的看到,是哪里出现的崩溃


    29331546584576_.pic_hd.jpg

结语:小伙伴们,后面的就自己去解析了,只能帮助到这里了。有喜欢的小伙伴们,点个心心。

你可能感兴趣的:(ios 审核被拒,返回的崩溃日志进行分析处理)