将产生错误日志的App的app和dSYM复制到某个指定目录
控制台进入目录
分别输入:
dwarfdump --uuid YourAppapp和warfdump --uuid YourAppappdSYM查看UUID是否与日志上的UUID一致
解释内存地址
Thread 0 Crashed:
0 libobjcAdylib 0x00003ec0 objc_msgSend + 24
1 MyApp 0x000036d2 0×1000 + 9938
我们得到了用户发生崩溃情况的内存地址:0x000036d2
命令行输入:dwarfdump –-arch armv6 MyAppappdSYM --lookup 0x000036d2 --debug-info
在行的最后面即可看到错误信息
由于你没有贴出代码,给你调试的办法
1、iTunes同步获取
大部分用户可能都会使用iTunes软件来管理iPhone或者iPad设备,这时候同步的Crash日志就会同步到电脑上,我们只需要在特定的路径里面寻找即可。
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
2、使用第三方软件:itools等
如果平时不用iTunes,而是使用itools这类第三方的软件对iPhone设备进行管理,也是没问题的。
拓什么情况下会产生崩溃日志
两种主要情况会产生崩溃日志:
1应用违反 *** 作系统规则。
2应用中有Bug。
违反iOS规则包括在启动、恢复、挂起、退出时watchdog超时、用户强制退出和低内存终止。
方法:
1同步应用程序以后,找到你要查看的日志文件,日志文件对应mac的位置,xp\vista的位置
2发现日志文件都是看不懂的16进制,如何进行转换成我们看得懂的内容
3使用命令行工具 "symbolicatecrash"来进行转换,可以把 工具复制到任何地方都可以
调用的路径:sudo cp/Developer/Platforms/iPhoneOSplatform/Developer/Library/PrivateFrameworks/DTDeviceKitframework/Versions/A/Resources/symbolicatecrash /usr/local/bin/
4"symbolicatecrash" 工具怎么用一般只要:symbolicatecrash reportcrashMobileLinesappdSYM > report-with-symbolscrash,就可以了
5注意说明的是,你在用Xcode debug打包的时候,会生成两个东西,一个是XXXapp,另一个是XXXappdSYM,这两个是相对应的,与我写的第4点里的 MobileLinesappdSYM是对应起来的这里的日志文件必须是你打包的那个版本,不然就没有解析出你的日志文件了通俗的说,你安装到手机上的app和这个dSYM,是配对的,如果你想要看这个手机上的日志文件,那你必须保存对应的dSYM文件去解析日志文件每一次重新打包都会重新生成dSYM文件
6可以根据你的 report-with-symbolscrash,日志文件来看看你的程序哪里出问题了
一、先分析app的崩溃的分布情况 这个需要有(iTunes connect账号),通过分析可以查看到自己的app奔溃主要发生在那些机型上。 如果没有账号,别着急,直接走第二步。 二、打开xcode,下载崩溃日志,直接定位出问题代码行。
苹果手机崩溃日志怎么看?在iPhone手机上的软件发生闪退或开发iOS应用程序时出现的闪退,一般都会自己或系统生成崩溃日志,那么我们从哪里以及怎么获取到崩溃日志呢?
工具原料iPhone手机一台数据线一条Xcode开发工具(可选)
方法/步骤分步阅读
1
/5
0首先我们看看崩溃日志一般会存放在哪个目录。而由于iOS系统的沙盒机制,一般我们不能直接访问它获取,但可以有下面的几种方法获取。
2
/5
1在iTunes Store上获取。使用数据线连接手机和电脑,就可以从电脑的以下路径找到崩溃日志了。
macOS上:~/Library/Logs/CrashReporter/MobileDevice/< DEVICE_NAME \>
Windows上: C:/Users/< USERNAME > /AppDataRoamingApple/ComputerLogsCrashReporterMobileDevice/< DEVICE_NAME >
3
/5
2如果你是开发者,可以从iTunes Connect上获取。但前提需手机用户打开设置->隐私->诊断与用量的开关。
4
/5
3可以通过开发工具Xcode,数据线连接电脑获取。通过在Xcode->Window->Devices,然后选中真机设备,点击View Device Logs。等待扫描后获取对应应用和日期的日志。
5
/5
4如果是应用开发者,自己代码中记录崩溃日志,并上传到服务器,发生崩溃后从网站日志管理中获取对应的崩溃日志即可。
注意事项
如果是在iTunes Connect获取崩溃日志,则需要用户设置允许发送崩溃日志。
自己开发的机制,发生崩溃后需要再次打开应用上传日志文件。
下载adb工具包,相应的adb工具包会有很多,只要包含如图红框内三项即可使用;
用USB线连接手机与电脑,并确保手机打开USB调试功能,具体如何打开连接可参考下方链接中步骤。注意:若手机未连接成功打开软件后会显示(waiting for device)如图;
0vivoX9手机怎么与电脑连接
3
录制过程,有两种方法。第一种方法是直接从工具包文件夹中自带的程序进入 *** 作界面,如图即可开始 *** 作手机APP,红色划线部分为抓取日志文档(系统默认)初始大小为0KB,会自动记录;
4
第二种方法是从运行中调用命令,这里要求将adb工具包尽量放在电脑磁盘根目录下(安装包名称尽量使用英文),方便调用。本文adb工具包放在D盘根目录下,可用命令cd d:\adb进行调取,调取完成后输入:
打印应用程序的log
PS:1,详细相关 *** 作命令如图示;2,划红线部分为log日志需要保存到的文档名称,初始大小为0KB。
以上就是关于在我的iOS App中捕获这样的错误日志,什么原因全部的内容,包括:在我的iOS App中捕获这样的错误日志,什么原因、ios崩溃日志在哪、苹果手机重启日志怎么看等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)