南京网站排名提升,电商公司怎么注册营业执照,没有域名的时候建网站,好的手表网站今天突然发现了一个解析iOS crash log的好方法#xff0c;忍不住来分享一下。 相信每个做iOS开发的TX都应该不会对symbolicatecrash陌生#xff0c;我们第一次遇到真机上产生的崩溃日志时#xff0c;在网上搜到的大部分教程都告诉我们说要用symbolicatecrash来解析crash log… 今天突然发现了一个解析iOS crash log的好方法忍不住来分享一下。 相信每个做iOS开发的TX都应该不会对symbolicatecrash陌生我们第一次遇到真机上产生的崩溃日志时在网上搜到的大部分教程都告诉我们说要用symbolicatecrash来解析crash log我信了所以相当长一段时间内我都是用这个工具来解析crash log的。 每次都去敲命令来解析crash log本身就是一件很蛋疼的事情但这还不是麻烦的最麻烦的是用symbolicatecrash还经常遇到问题怎么crash log又解析失败了怎么批量解析crash log 问题出在方法上实际上我们完全用不着symbolicatecrash的因为Xcode中自带的organizer就是很好的解析crash log工具了。 举个例子如果我们的应用是在自己的机器上编译生成的把应用装在真机上如果有崩溃产生把真机通过数据线连接到Mac电脑上打开Xcode菜单上的Window——Organizer找到设备的device logs项中的crash log稍等片刻你就会发现这里的crash log已经被自动解析过了大部分情况会自动解析如果不行请右键点击选择Re-Sysbomlicate。 但是如果应用不是在自己的编译上生成的你会发现organizer不会自动解析crash log除了系统函数。怎么在这种情况下也让organizer也能自动解析crash log呢 其实之前的organizer之所以能自动解析你设备上的crash log是因为它能根据spotlight的索引来找到对应的.app和dSYM文件对于这一点我的猜测是在自己的Mac电脑上编译生成应用时系统自动对其进行了索引。这个索引应该是根据app uuid来索引的。这个uuid可以执行下面的命令得到 dwarfdump —uuid YourApp.app/YourApp dwarfdump —uuid YourApp.app.dSYM 如果要能解析出crash logcrash log中携带的uuid与dSYM文件的uuid必须与app uuid一致。 既然spotlight能自动进行索引那是不是也可以手动进行索引呢答案是能这正是自动解析的关键。手动索引的命令是mdimport。比如把iOS应用的.app和.dSYM文件放到一个文件夹中执行命令mdimport foldername就可以。命令执行完成后再用刚才的organizer去查看crash log你会发现也能自动解析了。 这意味着什么呢意味着你把应用所有版本的.app和.dSYM文件放入一个专门的文件夹中只要mdimpor这个文件夹以后的organizer就能自动解析出你所有的crash log。 好处不仅仅是这一点。organizer还有一个import功能借助这个功能我们可以把其它Mac电脑上的crash log导入到自己电脑中的organizer然后就可以自动解析。更好的是用这个功能可以批量导入收集到的crash log然后我们就可以批量解析所有的crash log。 比起用symbolicatecrash这种方法简便了许多从现在起你可以抛弃symbolicatecrash了。但其实这还不是最好的方法目前先进的方法是用crash report管理系统来管理所有的crash比如使用QuincyKit, Crashlytics, Flurry等来进行管理有时间自己也研究研究。 Posted by wonderffee Aug 14th, 2013 原创文章版权声明自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0 转载于:https://www.cnblogs.com/max5945/p/3663966.html