如何查看iPhone Device上的iphone app crash logg

当前访客身份:游客 [
这个人很懒,啥也没写
目前还没有任何评论
今日访问:73
昨日访问:70
本周访问:294
本月访问:327
所有访问:9605
ios开发之crash日志收集,以及分析
发表于8个月前( 16:29)&&
阅读(1438)&|&评论()
0人收藏此文章,
ios, crash, iTunes, xcode, 终端, 命令行
在ios开发过程,当应用已经打包,iPhone设备通过ipa的包安装应用后,在使用过程发现crash,那么如何获取crash日志呢,现提供如下四种获取crash日志的方式:
1、打开iPhone设备的设置里面的隐私中的“诊断与用量”,然后如果app崩溃了,设备会弹出提示框,用户确认之后,crash log会自动发送到苹果后台,然后用开发者账号登陆上去,可以拿到crash log。
2、将设备链接到mac或者windows上,同步到iTunes后再从电脑的目录下获取crash log:
Mac OS X:~/Library/Logs/CrashReporter/MobileDevice
Windows XP:C:\Documents and Settings\Application Data\Apple computer\Logs\CrashReporter
Windows 7/Vista:&C:\Users\计算机登录名\AppData\Roaming\Apple Computer\Logs\CrashReporter\MobileDevice
3、可以通过itools工具获取crash log,打开itools,连接iPhone设备,按照下图提示,获取crash log
4、通过xcode获取crash log,打开xcode,连接iPhone设备,打开window下的device,可以看到你连接的设备,可以看到如下界面,点击view device logs,可以看到所有的日志,选中日志,点击右键可以到处日志
二、解析crash logs
经网上搜索解析crash logs的三种,由于未经测试,所以没有记录下,详见可以:
经测试可用的方法为atos -o XXX.app.dSYM/Contents/Resources/DWARF/XXX -l address0 targetAddress
a、XXX是appname
b、address0是当前进程在内存中加载的起始地址,至于为什么需要这个,那就有必要去了解下ASLR
获取地址参考下图:
c、targetAddress就是你想要符号化的地址 &
更多开发者职位上
1)">1)">1" ng-class="{current:{{currentPage==page}}}" ng-repeat="page in pages"><li class='page' ng-if="(endIndex<li class='page next' ng-if="(currentPage
相关文章阅读> 怎么查看iphone device下的crash log
怎么查看iphone device下的crash log
ly810304 & &
发布时间: & &
浏览:23 & &
回复:0 & &
悬赏:0.0希赛币
如何查看iphone device上的crash log
  今天同事突然问了我这个问题,,我第一反应是没有办法查看device上的crash log.但是我一google,发现办法还是很多的.
  下面总结一下:
  方法一:将机器链接mac,同步完成之后.
  查看~/Library/Logs/CrashReporter/MobileDevice/&DEVICE_NAME&.
  但是这个方法有个问题:查看的log写的不是很详细.看第二个办法.
  方法二:使用xcode.
  打开xcode的organize,然后查看 Device logs,这里面有crash log的详细信息.
本问题标题:
本问题地址:
温馨提示:本问题已经关闭,不能解答。
暂无合适的专家
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&&&增值电信业务经营许可证湘B2-ios&Crash&Log&分析汇总
1.xcode&有自带的symbolicatecrash,可以将.crash文件中的16进制地址转换成可读的函数地址。
symbolicatecrash位于:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources/symbolicatecrash(Xcode&4.5)
可以将symbolicatecrash拷贝到便于操作的目录。
如:将其拷贝到Desktop/iphonedug文件夹中。
2.每一次Build之后会有相应的xxx.app,&xxx.app.dSYM文件,.dSYM文件是将Build之后的文件16进制地址对应的函数地址储存起来之后的文件。
每一个xx.app,&xxx.app.dSYM文件都拥有相应的uuid,crash文件也有uuid,只有三者uuid一至才表明之三者可以解析出正确的日志文件。
查看xx.app文件的uuid的方法,在terminal中输入命令:dwarfdump&--uuid&xxx.app/xxx&(xxx工程名)
查看xx.app.dSYM文件的uuid的方法,在terminal中输入命令:dwarfdump&--uuid&xxx.app.dSYM&(xxx工程名)
而.crash的uuid位于,crash日志中的Binary&Images:中的第一行。如:armv7s&&&13760bde0d073f1eb4d596c3df753f4b&
将对应的xx.app,&xx.app.dSYM文件也拷贝到Desktop/iphonedug文件夹中
3.使用symbolicatecrash解析.crash日志。
在terminal中输入命令:./symbolicatecrash&xxx.crash&xxx.app.dSYM&&&test.log
这样可以将.crash日志转换成test.log,test.log即可读的函数文件。
输入上述命令可能会出现Error:&"DEVELOPER_DIR"&is&not&defined&at&./symbolicatecrash&line&53.这个错误。
如果出现上述错误,输入命令:export&DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer,
然后继续执行./symbolicatecrash&xxx.crash&xxx.app.dSYM&&&test.log可以成功
使用命令:atos&-o&xxx.app/xxx&-arch&armv7&0x38ad42f9&0x38ad42f9&0x38ad42f9(多个16进制地址,使用空格分开)
注意.app,&.app.dSYM需要跟日志程序版本build一致
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。}

我要回帖

更多关于 iphone crash log 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信