使用Flurry Crash Analytics来表示iOS 7崩溃报告

前端之家收集整理的这篇文章主要介绍了使用Flurry Crash Analytics来表示iOS 7崩溃报告前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我最近为我的应用推出了iOS 7更新,并启用了崩溃分析功能.我最近注意到有些用户正在遇到崩溃.使用Flurry我可以在我的应用程序崩溃时检索堆栈跟踪,以跟踪问题.
那么,我确实很熟悉崩溃报告,并且已经修复了使用它们的错误,然后通过从iTunes Connect或邮件获取它们,并在 Xcode中简单地表示它们.然而,我并没有使用Flurry做到这一点.

我试过的
在Flurry本身查看堆栈跟踪时,这是我得到的:

正如你所看到的,很多行都是完美的象征,其他的则被标示为<编辑>.
一些研究告诉我,苹果在iOS 6和7中剥离了很多调试符号.
我尝试的第一件事是上传自己的dSYM文件. Flurry报告dSYM文件被保存,并且崩溃报告再次被使用dSYM文件进行了符号化.然而,堆栈跟踪仍然与没有dSYM完全相同.
没问题,我想,我可以尝试下载崩溃报告,并使用Xcode进行符号化.
点击下载给我一个文件(没有扩展名,所以我将其重命名为.crash)与此内容

  1. Hardware Model: iPhone3,1
  2. Process: RadioPlayer [2965]
  3. Path: /var/mobile/Applications/E4DD7DA6-4450-4538-A1E2-AE23139FAC10/RadioPlayer.app/RadioPlayer
  4. Identifier: *******
  5. Version: 1.2.0
  6. Code Type: ARM
  7. Parent Process: launchd [1]
  8.  
  9. Exception Type: SIGSEGV
  10. Exception Codes: SEGV_ACCERR at 0x548a000
  11. Crashed Thread: 2
  12.  
  13. Thread 0:
  14. 0 libsystem_kernel.dylib 0x3aa67a8c _mach_msg_trap + 20
  15. 1 CoreFoundation 0x3015e7cb <redacted> + 154
  16. 2 CoreFoundation 0x3015cf37 <redacted> + 854
  17. 3 CoreFoundation 0x300c7ce7 _CFRunLoopRunSpecific + 522
  18. 4 CoreFoundation 0x300c7acb _CFRunLoopRunInMode + 106
  19. 5 GraphicsServices 0x34da0283 _GSEventRunModal + 138
  20. 6 UIKit 0x32969a41 _UIApplicationMain + 1136
  21. 7 RadioPlayer 0x000dfb9b __mh_execute_header + 23451
  22. 8 libdyld.dylib 0x3a9c3ab7 <redacted> + 2
  23.  
  24. Thread 1:
  25. 0 libsystem_kernel.dylib 0x3aa6783c _kevent64 + 24
  26. 1 libdispatch.dylib 0x3a9a23f3 <redacted> + 38
  27.  
  28. Thread 2 Crashed:
  29. 0 vImage 0x2f19d7dc <redacted> + 139
  30. 1 vImage 0x2f1874ff _vImageFlatten_RGBA8888 + 378
  31. 2 vImage 0x2f26e799 <redacted> + 40
  32. 3 vImage 0x2f27d7c3 <redacted> + 674
  33. 4 vImage 0x2f27d365 _vImageConvert_AnyToAny + 1300
  34. 5 ImageIO 0x30efd9e7 <redacted> + 858
  35. 6 ImageIO 0x30ef8c3b <redacted> + 2754
  36. 7 ImageIO 0x30ef8173 <redacted> + 102
  37. 8 ImageIO 0x30ef8057 _CGImageDestinationFinalize + 66
  38. 9 UIKit 0x32a8a611 _UIImageJPEGRepresentation + 520
  39. 10 MediaPlayer 0x31435319 -[MPMediaItemArtwork imageDataWithSize:atPlaybackTime:] + 36
  40. 11 MediaPlayer 0x31435387 -[MPMediaItemArtwork albumImageDataWithSize:] + 42
  41. 12 MediaPlayer 0x31494f0d -[MPNowPlayingInfoCenter _pushNowPlayingInfoAndRetry:] + 824
  42. 13 libdispatch.dylib 0x3a99ed7b <redacted> + 10
  43. 14 libdispatch.dylib 0x3a99f2f3 <redacted> + 378
  44. 15 libdispatch.dylib 0x3a99f75b <redacted> + 38
  45. 16 libdispatch.dylib 0x3a9b18f9 <redacted> + 76
  46. 17 libdispatch.dylib 0x3a9b1b79 <redacted> + 56
  47. 18 libsystem_pthread.dylib 0x3aae0dbf __pthread_wqthread + 298
  48. 19 libsystem_pthread.dylib 0x3aae0c84 _start_wqthread + 8
  49.  
  50.  
  51. // The file continues like this listing the other threads and overview of binary images.
  52. // I however didn't paste that part here since I don't think it's useful.

我现在尝试将这个文件拖到Xcode管理器并导入设备日志.两者根本没有.列表中还没有显示新的设备登录或其他任何内容.
下一步:尝试使用atos手动表示崩溃日志.我将dSYM的内容复制到工作目录等,然后尝试这个命令

  1. xcrun atos -arch armv7 -o RadioPlayer 0x31435387`

这返回0x31435387.我尝试了一些其他内存地址,每次输出都是内存地址本身.

有人可以帮我解决这个问题吗?我真的很想象征这些<编纂>符号,因为它肯定会帮助我修复导致这些崩溃的错误.谢谢!

解决方法

我注意到为了能够将Flurry崩溃报告拖到XCode Organizer中,您需要:

>将文件重命名为.crash
>在报告顶部添加事件标识符行.这看起来像GUID,所以你可以把任何独特的或generate one online,例如

事件识别码:D1D6CA1F-EC87-4677-9366-401BE050B2C8
>添加iOS和崩溃报告版本行(高于异常类型),例如

操作系统版本:iOS 7.1.1(11D201)

报告版本:104

猜你在找的iOS相关文章