iOS - Symbolicate Stack trace symbols

﹥>﹥吖頭↗ 提交于 2019-12-23 01:15:02

问题


I want to symbolicate the stack trace symbols logged using [NSThread callStackSymbols] to identify the full stack backtrace calls. But, this doesn't give symbolicated trace.

0   TestApp                               0x0029616f TestApp + 1823087
    1   TestApp                               0x003ef18d TestApp + 3236237
    2   UIKit                               0x2ab7bb1f <redacted> + 438
    3   UIKit                               0x2ac0bea3 <redacted> + 306
    4   UIKit                               0x2ab7bb1f <redacted> + 438
    5   CoreFoundation                      0x2757546d <redacted> + 48
    6   CoreFoundation                      0x2756e4c3 <redacted> + 234
    7   UIKit                               0x2ab7bc9b <redacted> + 818
    8   UIKit                               0x2ae32799 <redacted> + 584
    9   UIKit                               0x2abdfbd9 <redacted> + 308
    10  UIKit                               0x2ab5bdd7 <redacted> + 458
    11  CoreFoundation                      0x2760fffd <redacted> + 20
    12  CoreFoundation                      0x2760d6bb <redacted> + 278
    13  CoreFoundation                      0x2760dac3 <redacted> + 914
    14  CoreFoundation                      0x2755b3b1 CFRunLoopRunSpecific + 476
    15  CoreFoundation                      0x2755b1c3 CFRunLoopRunInMode + 106
    16  GraphicsServices                    0x2eb88201 GSEventRunModal + 136
    17  UIKit                               0x2abc543d UIApplicationMain + 1440
    18  TestApp                               0x0031581b TestApp + 2344987
    19  libdyld.dylib                       0x35a6baaf <redacted> + 2 

I tried this with development as well as enterprise build. Neither worked out. Is there anyway to symbolicate this? I searched lot of forums and all are asking to do this with atos command like below

atos -arch armv7 -o 'app name.app'/'app name' 0x000000000

But, I am not sure whats the memory address i have to use for the above command and how to get it.

Any help would be greatly appreciated, thanks.


回答1:


There's a few pieces you're skipping here. The memory addresses in atos should reference the load address and the stack address, and you'll need the dSYM file as well.

There's actually a very good writeup on apteligent called Symbolicating an iOS Crash Report about doing this manually. I would suggest reading it thoroughly to understand how symbolication works.



来源:https://stackoverflow.com/questions/30858080/ios-symbolicate-stack-trace-symbols

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!