iOS上线之后crash处理

作者: Ozhy1991yhzO | 来源:发表于2018-07-25 16:29 被阅读234次

    APP上线之后,如何查看crash,怎么处理?

    (1)在XCode中定位处理

    (2)集成第三方,通过第三方上传的日志处理

    (3)设备中的日志如何符号化

    一,在XCode中定位crash具体的方法

    1,APP的crash情况,可以在iTunes connect上查看,如下图。


    屏幕快照 2018-07-19 16.38.44.png
    [图片上传中...(屏幕快照 2018-07-19 16.44.53.png-1ddc59-1531990235515-0)] 屏幕快照 2018-07-19 16.44.53.png

    通过上面的数据,定位crash是在那个版本。
    怎么处理,可以在XCode中找到crash的具体地方。


    [图片上传中...(屏幕快照 2018-07-19 16.54.47.png-7c4c56-1531990883184-0)] 屏幕快照 2018-07-19 16.54.47.png

    二,使用第三方的crash收集,我这里使用的是百度统计的。根据文档集成,记得要上传.dsym文件,百度统计会自动符号化,供我们查看。

    百度统计crash集成文档https://mtj.baidu.com/sdkdoc/iOS/BaiduMTJ_iOS_App_V4.8.0/function/crash/analysis/auto.html
    下图是上传文件的地方。文档中的dsym文件在哪里得到,后面有提到。

    屏幕快照 2018-07-26 08.53.38.png

    根据文档上传文件后,用户crash日志会被自动符号化,如下图:


    屏幕快照 2018-07-23 10.35.35.png

    三,crash日志符号化。有时需要查看本地的crash原因,如何符号化crash日志?符号化crash日志需要三个文件 .Crash、.dSYM、和symbolicatecrash。

    1,找crash日志。本地crash日志在哪里。

    屏幕快照 2018-07-25 11.21.45.png

    找准你自己的APP crash日志导出,就是 .crash文件。


    屏幕快照 2018-07-25 11.32.35.png

    2,找symbolicatecrash文件。 symbolicatecrash是Xcode自带工具解析iOS Crash的工具。

    终端输入:
    find /Applications/Xcode.app -name symbolicatecrash -type f
    

    得到symbolicatecrash文件路径,直接前往即可。

    /Applications/Xcode.app/Contents/Developer/Platforms/AppleTVSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
    

    symbolicatecrash长这个样子


    屏幕快照 2018-07-25 11.42.26.png

    3,找dsym文件。想要每次编译(debug)都有dsym文件,请在build setting里面设置一下。

    屏幕快照 2018-07-25 13.51.12.png

    打开设置后,点击product文件下的.app文件,show in finder 在里面会看到dsym文件。记得找你crash对应的版本的dsym,别随便搞一个,每个版本的dsym对应的uuid是不一样的。


    屏幕快照 2018-07-25 14.04.24.png release之后的包在哪里找dsym文件呢?看图 屏幕快照 2018-07-25 14.12.45.png
    屏幕快照 2018-07-25 14.13.07.png

    显示包内容,就会看到dsym文件夹。

    4,符号化crash文件。

    将. dsym .crash和symbolicatecrash 拖入同一个文件夹。打开终端输入命令:

    //test是三个文件所在的文件夹
    cd /Users/zhouyang/Desktop/test 
    
    //注释:命令样式 ./symbolicatecrash . crash文件路径 .dSYM文件路径 > Control_symbol.crash
    
    ./symbolicatecrash /Users/zhouyang/Desktop/test/LittleInvestLetou\ \ 2018-7-25\ 11-30.crash /Users/zhouyang/Desktop/test/LittleInvestLetou.app.dSYM > Control_symbol.crash
    

    如果出现:

    Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 69.
    

    请输入以下命令:

    export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer" 
    

    再次执行

    //注释:命令样式 ./symbolicatecrash . crash文件路径 .dSYM文件路径 > Control_symbol.crash
    
    ./symbolicatecrash /Users/zhouyang/Desktop/test/LittleInvestLetou\ \ 2018-7-25\ 11-30.crash /Users/zhouyang/Desktop/test/LittleInvestLetou.app.dSYM > Control_symbol.crash
    

    执行完后会得到一个Control_symbol.crash文件,里面的内容就是符号化后的内容。


    屏幕快照 2018-07-25 16.18.26.png
    屏幕快照 2018-07-25 16.27.58.png

    相关文章

      网友评论

        本文标题:iOS上线之后crash处理

        本文链接:https://www.haomeiwen.com/subject/bqitmftx.html