您的位置:首页 > 移动开发

UMeng"Application received signal SIGSEGV"错误分析

2015-03-03 17:54 471 查看
从友盟中, 我们可能会得到如下信息:

Application received signal SIGSEGV
(null)
(
0   CoreFoundation                      0x00000001866fde64 <redacted> + 160
1   libobjc.A.dylib                     0x0000000196df80e4 objc_exception_throw + 60
2   CoreFoundation                      0x00000001866fdd88 <redacted> + 0
3   xxxDance                            0x1005b9d94 _ZN15CTXAppidConvert17IsConnectionAppIdEPKc + 587496
4   libsystem_platform.dylib            0x000000019761494c _sigtramp + 52
5   ???                                 0x0000000000000014 0x0 + 20
6   GLEngine                            0x000000018a1e12c4 <redacted> + 144
7   GLEngine                            0x000000018a187f54 <redacted> + 988
8   xxxDance                            0x1003f5120 _ZN9_baidu_vi7CVArrayIjjE6AppendERKS1_ + 7920
9   xxxDance                            0x1003f39a4 _ZN9_baidu_vi7CVArrayIjjE6AppendERKS1_ + 1908
10  xxxDance                            0x10045c564 _ZN9_baidu_vi7CVArrayINS_12CVHttpClient16tag_PostDataInfoERS2_ED2Ev + 30940
11  xxxDance                            0x100406ebc _ZN9_baidu_vi7CVArrayIN16_baidu_framework17tagHttpClientItemERS2_ED2Ev + 44932
12  xxxDance                            0x100409278 _ZN9_baidu_vi7CVArrayI19tag_PaoPaoAttributeRS1_ED2Ev + 3260
13  libdispatch.dylib                   0x000000019743d3ac <redacted> + 24
14  libdispatch.dylib                   0x000000019743d36c <redacted> + 16
15  libdispatch.dylib                   0x0000000197441980 _dispatch_main_queue_callback_4CF + 932
16  CoreFoundation                      0x00000001866b56a0 <redacted> + 12
17  CoreFoundation                      0x00000001866b3748 <redacted> + 1492
18  CoreFoundation                      0x00000001865e11f4 CFRunLoopRunSpecific + 396
19  GraphicsServices                    0x000000018f7775a4 GSEventRunModal + 168
20  UIKit                               0x000000018af12784 UIApplicationMain + 1488
21  xxxDance                            0x100200b6c xxxDance + 2100076
22  libdyld.dylib                       0x0000000197466a08 <redacted> + 4
)
dSYM UUID: AC5A1E49-1E38-3CD7-BD6F-DE49294F03AF
CPU Type: arm64
Slide Address: 0x0000000100000000
Binary Image: xxxDance
Base Address: 0x0000000100044000


找到当时上传代码时使用的DYSM文件,这文件通常在.xcarchive文件中。 右键该文件, 然后通过Terminal工具跳转到下面的DWARF文件夹中:

$ cd ~/Library/Developer/Xcode/Archives/yyyy-mm-dd/appname.xcarchive/dSYMs/appname.app.dSYM/Contents/Resources/DWARF


然后执行

$ atos -arch arm64 -o xxxMovie 0x1153b9


就可以看到这处内存地址反编译回来的源码行,可以有效地帮助分析原因。

注意,如果定位到的地址是UmengSignalHandler,要知道这个不是错误,是捕捉crash的方法,本身不引起crash, 当crash发生时由它来捕捉,直接忽略crash log中的 UmengSignalHandler 部分即可。

参考文章:

通过崩溃trace来查找问题原因
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: