美文网首页
iOS crash 解析崩溃日志

iOS crash 解析崩溃日志

作者: 大虾咪 | 来源:发表于2017-03-13 12:19 被阅读502次

    解析崩溃日志

     一  获取crash

    1.用户把设备连接到电脑上,打开xcode-window,选中Devices-当前连接设备-Device Log,就可以查看所有当前设备的crash log,这个时候打开每一份crash的时候,发现这些文件的部分地址都会被转换成,类名,方法名和行号等。设备上的日志只用刚刚查看过都会被同步到organizer种,在LIBRARY下的Device Log可以查看。

    2.如果你的应用已经上架,那么开发者可以通过iTunes Connect(Manage Your Applications - View Details - Crash Reports)获取用户的crash日志。不过这并不是100%有效的,而且大多数开发者并不依赖于此,因为这需要用户设备同意上传相关信息,详情可参见iOS: Providing Apple with diagnostics and usage information摘要。

    以上两种方法 Xcode8.3.2之后 我没找到

    3.在Xcode - window -Device - view device logs

    二:找到相对应的.dSYM文件,在哪呢?就在这个目录里: ~/Library/Developer/Xcode/Archives/ 或者然后打开打的包,xcarchive显示包内容 在子文件里找到 .dSYM 和 symbolicatecrash

    将.dSYM      .app    symbolicatecrash  .crash  四个东西放到一个新建文件夹

    1.查看 xx.app 文件的 UUID,terminal 中输入命令 :

    dwarfdump  --uuid xx.app/xx (xx代表你的项目名)

    2.查看 xx.app.dSYM 文件的 UUID ,在 terminal 中输入命令:

    dwarfdump --uuid xx.app.dSYM

    3.crash 文件内第一行 Incident Identifier 就是该 crash 文件的 UUID

    注意: 三者UUID一致方可进行下一步操作

    终端找到symbolicatecrash路径(Xcode8.2.1-8.3.3)

    /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash

    会得到的symbolicatecrash的路径, 接下来前往文件夹路径拷贝symbolicatecrash

    到这个目录去,把这个工具拷贝到和上述文件同一个目录

    cd进入新建文件夹

      MacBook-Pro:~ tianmingfu$ cd /Users/denmeiho/Desktop/Crash

    ./symbolicatecrash    crash路径    dSYM路径 > xx.crash

    MacBook-Pro:Crash tianmingfu$ ./symbolicatecrash /Users/denmeiho/Desktop/Crash/MobileBankProject.crash  /Users/denmeiho/Desktop/Crash/MobileBankProject.app.dSYM >>result.crash

    可能会报错

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

    继续在终端输入   改变环境变量

    export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer/

    再次执行./symbolicatecrash    crash路径  dSYM路径  >  result.crash

    最终会拿到解析出来的result.crash

    注意: 如果命令不被允许可以 在  su - root 下运行

    分析前:

    Last Exception Backtrace:

    (0x1937a21c0 0x1921dc55c 0x1937a2094 0x19422f79c 0x199972dc4 0x1999720a4 0x19972c1bc 0x1002004a0 0x1002006b0 0x1000fb1ac 0x1002e6e70 0x1002e62e8 0x10017c2b8 0x1001173d8 0x1001145dc 0x10010d370 0x10011bfd4 0x19262d200 0x19262d1c0 0x192631d6c 0x19374ff2c 0x19374db18 0x19367c048 0x195102198 0x1996612fc 0x19965c034 0x1003699d4 0x1926605b8)

    Thread 0 name:  Dispatch queue: com.apple.main-thread

    Thread 0 Crashed:

    0  libsystem_kernel.dylib        0x0000000192772014 0x192753000 + 126996

    1  libsystem_pthread.dylib      0x000000019283a450 0x192835000 + 21584

    2  libsystem_c.dylib            0x00000001926e63e0 0x192683000 + 406496

    3  libc++abi.dylib              0x00000001921b12d4 0x1921b0000 + 4820

    4  libc++abi.dylib              0x00000001921cecc0 0x1921b0000 + 126144

    5  libobjc.A.dylib              0x00000001921dc844 0x1921d4000 + 34884

    6  libc++abi.dylib              0x00000001921cb66c 0x1921b0000 + 112236

    7  libc++abi.dylib              0x00000001921caf84 0x1921b0000 + 110468

    8  libobjc.A.dylib              0x00000001921dc690 0x1921d4000 + 34448

    9  CoreFoundation                0x00000001937a2094 0x193673000 + 1241236

    10  Foundation                    0x000000019422f79c 0x194181000 + 714652

    11  UIKit                        0x0000000199972dc4 0x1995e6000 + 3722692

    12  UIKit                        0x00000001999720a4 0x1995e6000 + 3719332

    13  UIKit                        0x000000019972c1bc 0x1995e6000 + 1335740

    14  MobileBankProject            0x00000001002004a0 0x1000d8000 + 1213600

    15  MobileBankProject            0x00000001002006b0 0x1000d8000 + 1214128

    16  MobileBankProject            0x00000001000fb1ac 0x1000d8000 + 143788

    17  MobileBankProject            0x00000001002e6e70 0x1000d8000 + 2158192

    18  MobileBankProject            0x00000001002e62e8 0x1000d8000 + 2155240

    19  MobileBankProject            0x000000010017c2b8 0x1000d8000 + 672440

    20  MobileBankProject            0x00000001001173d8 0x1000d8000 + 259032

    21  MobileBankProject            0x00000001001145dc 0x1000d8000 + 247260

    22  MobileBankProject            0x000000010010d370 0x1000d8000 + 217968

    23  MobileBankProject            0x000000010011bfd4 0x1000d8000 + 278484

    24  libdispatch.dylib            0x000000019262d200 0x19262c000 + 4608

    25  libdispatch.dylib            0x000000019262d1c0 0x19262c000 + 4544

    分析后:

    Last Exception Backtrace:

    0  CoreFoundation                0x1937a21c0 0x193673000 + 1241536

    1  libobjc.A.dylib              0x1921dc55c 0x1921d4000 + 34140

    2  CoreFoundation                0x1937a2094 0x193673000 + 1241236

    3  Foundation                    0x19422f79c 0x194181000 + 714652

    4  UIKit                        0x199972dc4 0x1995e6000 + 3722692

    5  UIKit                        0x1999720a4 0x1995e6000 + 3719332

    6  UIKit                        0x19972c1bc 0x1995e6000 + 1335740

    7  MobileBankProject            0x1002004a0 -[CPMajorManager inRootController:] (CPMajorManager.m:130)

    8  MobileBankProject            0x1002006b0 __30-[CPMajorManager checkVersion]_block_invoke (CPMajorManager.m:147)

    9  MobileBankProject            0x1000fb1ac __53-[CPPlugin registPluginWithObject:withData:complete:]_block_invoke (CPPlugin.m:68)

    10  MobileBankProject            0x1002e6e70 __31-[CPVersionPlugin checkVersion]_block_invoke (CPVersionPlugin.m:34)

    11  MobileBankProject            0x1002e62e8 __37-[CSIICheckVersionUpdate requestMenu]_block_invoke (CSIICheckVersionUpdate.m:334)

    12  MobileBankProject            0x10017c2b8 -[CSIIBusinessLogic transactionSucceeded:] (CSIIBusinessLogic.m:286)

    13  MobileBankProject            0x1001173d8 -[CSIIBusinessTransaction disposeReturnCode:] (CSIIBusinessTransaction.m:706)

    14  MobileBankProject            0x1001145dc __54-[CSIIBusinessTransaction initWithTransaction:caller:]_block_invoke (CSIIBusinessTransaction.m:378)

    15  MobileBankProject            0x10010d370 __79-[CSIIMADPNetworkHttpClient initWithTransaction:onSuccessBlock:onFailureBlock:]_block_invoke (CSIIMADPNetworkHttpClient.m:109)

    16  MobileBankProject            0x10011bfd4 __72-[CSIIMADPAFHTTPRequestOperation setCompletionBlockWithSuccess:failure:]_block_invoke.143 (CSIIMADPAFHTTPRequestOperation.m:283)

    (http://site.baidu.com)

    相关文章

      网友评论

          本文标题:iOS crash 解析崩溃日志

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