作为一个iOS开发,一般我有定期浏览App运行分析数据的习惯,iTunes Connect的分析功能提供了相对完善的分析数据,其中包含了“展示次数” “App购买量” "使用次数" "奔溃次数"等,每个点击进去后都可以看详情的数据情况。
新版本上线,没有什么比“奔溃次数”突然猛增更让人操心的了,虽然iTunes Connect提供的分析数据能够给我们起到一个预警的作用,不过作为开发,我们更关心的是App哪里出错了?为什么会闪退?然而分析平台并未给我们提供具体的错误信息,考虑到这种情况,我们选择对接友盟的应用统计,对接成功后,友盟会为我们自动收集错误分析数据。
我们可在错误列表里选中其中一条错误查看具体的错误信息,比如说从下面错误是因为数组导致的:
那么拿到详细的错误信息后,我们要怎么定位具体的错误代码位置?这里我们使用的是dSYM文件分析的方法。
App版本发布成功后,Xcode的Oranizer仍为我们保留着Archives文件,点击右边的“Download dSYMs”按钮,Xcode会自动把文件保留到“/Library/Developer/Xcode/Archives”目录,成功后我们暂时先不管它。(这里建议大家短期不要删除Archives文件,便于我们以后排错)
分析工具我用的是dSYMTools,下载完成运行后选中文件名(文件名对应Xcode的Archives文件),复制友盟错误信息里面的CPU、Slide Address、Base Address信息到对应的文本框,点击“分析”我们就可以看到该错误的具体代码位置或方法名了。
需要注意的是,友盟提供的CPU不一定与dSYMTools的匹配(如上面我的错误CPU类型显示arm64,dSYMTools上实际操作选的是armv7),如果出现这种情况,在dSYMTools更换下CPU类型就可以了。
网友评论