iPhone - How to symbolicate/translate/read device

2019-07-18 17:51发布

How may I "translate" / symbolicate the crashlog coming from my device to know where the app crashed, assuming I ran a debug build, I have the .crash file, and the .app, and .app.dSYM files corresponding to those sent to the device.

An interface (without command line) solution would be appreciated as it is said that the organiser knows how to do that (but I damn don't find how to). If there are no solution of that kind, so...

P.S. : I have no symbolicatecrash anywhere

EDIT

I achieved to have some kind of result with the atos command.

My crashlog is the following :

Thread 0 Crashed:
0   MapKit                          0x31c0933c 0x31be4000 + 152380
1   MapKit                          0x31c0931c 0x31be4000 + 152348
2   MapKit                          0x31c26118 0x31be4000 + 270616
3   Foundation                      0x33628a36 0x33619000 + 64054
4   Foundation                      0x336280f6 0x33619000 + 61686
5   Foundation                      0x336202c0 0x33619000 + 29376
6   Foundation                      0x3368552c 0x33619000 + 443692
7   CoreFoundation                  0x33a69ae6 0x33a20000 + 301798
8   CoreFoundation                  0x33a69858 0x33a20000 + 301144
9   MapKit                          0x31c560c6 0x31be4000 + 467142
10  MapKit                          0x31c55e54 0x31be4000 + 466516
11  MapKit                          0x31c23414 0x31be4000 + 259092
12  CoreFoundation                  0x33a5ebb8 0x33a20000 + 256952
13  CoreFoundation                  0x33a83266 0x33a20000 + 406118
14  MapKit                          0x31c1232a 0x31be4000 + 189226
15  MapKit                          0x31c13844 0x31be4000 + 194628
16  MapKit                          0x31c134b8 0x31be4000 + 193720
17  CoreLocation                    0x34371410 0x34369000 + 33808
18  CoreLocation                    0x3436f68e 0x34369000 + 26254
19  CoreLocation                    0x3436f7e6 0x34369000 + 26598
20  CoreLocation                    0x3436b534 0x34369000 + 9524
21  CoreLocation                    0x3436d3cc 0x34369000 + 17356
22  CoreLocation                    0x3436d512 0x34369000 + 17682
23  CoreFoundation                  0x33a813fe 0x33a20000 + 398334
24  CoreFoundation                  0x33a556f8 0x33a20000 + 218872
25  CoreFoundation                  0x33a556bc 0x33a20000 + 218812
26  CoreFoundation                  0x33a47f76 0x33a20000 + 163702
27  CoreFoundation                  0x33a47c80 0x33a20000 + 162944
28  CoreFoundation                  0x33a47b88 0x33a20000 + 162696
29  GraphicsServices                0x33b0e4a4 0x33b0a000 + 17572
30  GraphicsServices                0x33b0e550 0x33b0a000 + 17744
31  UIKit                           0x32099322 0x32062000 + 226082
32  UIKit                           0x32096e8c 0x32062000 + 216716
33  MyApptest                       0x0000366c 0x1000 + 9836
34  MyApptest                       0x00002660 0x1000 + 5728

Thread 1:
0   libSystem.B.dylib               0x33b89974 0x33b5c000 + 186740
1   libSystem.B.dylib               0x33c33704 0x33b5c000 + 882436
2   libSystem.B.dylib               0x33c33174 0x33b5c000 + 881012
3   libSystem.B.dylib               0x33c32b98 0x33b5c000 + 879512
4   libSystem.B.dylib               0x33bd724a 0x33b5c000 + 504394
5   libSystem.B.dylib               0x33bcf970 0x33b5c000 + 473456

Thread 2:
0   libSystem.B.dylib               0x33b5d268 0x33b5c000 + 4712
1   libSystem.B.dylib               0x33b5f354 0x33b5c000 + 13140
2   CoreFoundation                  0x33a48648 0x33a20000 + 165448
3   CoreFoundation                  0x33a47ed2 0x33a20000 + 163538
4   CoreFoundation                  0x33a47c80 0x33a20000 + 162944
5   CoreFoundation                  0x33a47b88 0x33a20000 + 162696
6   WebCore                         0x304df124 0x30428000 + 749860
7   libSystem.B.dylib               0x33bd6886 0x33b5c000 + 501894
8   libSystem.B.dylib               0x33bcba88 0x33b5c000 + 457352

Thread 3:
0   libSystem.B.dylib               0x33b5d268 0x33b5c000 + 4712
1   libSystem.B.dylib               0x33b5f354 0x33b5c000 + 13140
2   CoreFoundation                  0x33a48648 0x33a20000 + 165448
3   CoreFoundation                  0x33a47ed2 0x33a20000 + 163538
4   CoreFoundation                  0x33a47c80 0x33a20000 + 162944
5   CoreFoundation                  0x33a47b88 0x33a20000 + 162696
6   Foundation                      0x336465f6 0x33619000 + 185846
7   Foundation                      0x33624192 0x33619000 + 45458
8   Foundation                      0x3361d242 0x33619000 + 16962
9   libSystem.B.dylib               0x33bd6886 0x33b5c000 + 501894
10  libSystem.B.dylib               0x33bcba88 0x33b5c000 + 457352

Thread 4:
0   libSystem.B.dylib               0x33b5d268 0x33b5c000 + 4712
1   libSystem.B.dylib               0x33b5f354 0x33b5c000 + 13140
2   CoreFoundation                  0x33a48648 0x33a20000 + 165448
3   CoreFoundation                  0x33a47ed2 0x33a20000 + 163538
4   CoreFoundation                  0x33a47c80 0x33a20000 + 162944
5   CoreFoundation                  0x33a47b88 0x33a20000 + 162696
6   MapKit                          0x31be8906 0x31be4000 + 18694
7   MapKit                          0x31be87ea 0x31be4000 + 18410
8   libSystem.B.dylib               0x33bd6886 0x33b5c000 + 501894
9   libSystem.B.dylib               0x33bcba88 0x33b5c000 + 457352

Thread 5:
0   libz.1.dylib                    0x314b1842 0x314ad000 + 18498
1   ImageIO                         0x31aa0230 0x31a97000 + 37424
2   ImageIO                         0x31a9f410 0x31a97000 + 33808
3   ImageIO                         0x31a9e0d2 0x31a97000 + 28882
4   ImageIO                         0x31a9dade 0x31a97000 + 27358
5   CoreGraphics                    0x341ca052 0x341c1000 + 36946
6   CoreGraphics                    0x341c9f5c 0x341c1000 + 36700
7   CoreGraphics                    0x341c9c8a 0x341c1000 + 35978
8   CoreGraphics                    0x341e6e1a 0x341c1000 + 155162
9   CoreGraphics                    0x341f886a 0x341c1000 + 227434
10  CoreGraphics                    0x341c5e90 0x341c1000 + 20112
11  CoreGraphics                    0x341c4668 0x341c1000 + 13928
12  libRIP.A.dylib                  0x337a3658 0x33797000 + 50776
13  libRIP.A.dylib                  0x337a0c6e 0x33797000 + 40046
14  CoreGraphics                    0x341c4520 0x341c1000 + 13600
15  CoreGraphics                    0x341c43de 0x341c1000 + 13278
16  MapKit                          0x31bf6a12 0x31be4000 + 76306
17  MapKit                          0x31bf6644 0x31be4000 + 75332
18  QuartzCore                      0x3410e2fe 0x340f9000 + 86782
19  QuartzCore                      0x3412ed26 0x340f9000 + 220454
20  QuartzCore                      0x3412e7e8 0x340f9000 + 219112
21  QuartzCore                      0x3412e6a0 0x340f9000 + 218784
22  QuartzCore                      0x3412e614 0x340f9000 + 218644
23  QuartzCore                      0x340fb01a 0x340f9000 + 8218
24  libSystem.B.dylib               0x33bd6886 0x33b5c000 + 501894
25  libSystem.B.dylib               0x33bcba88 0x33b5c000 + 457352

Thread 6:
0   libSystem.B.dylib               0x33b8168c 0x33b5c000 + 153228
1   CoreFoundation                  0x33a7f662 0x33a20000 + 390754
2   libSystem.B.dylib               0x33bd6886 0x33b5c000 + 501894
3   libSystem.B.dylib               0x33bcba88 0x33b5c000 + 457352

Thread 7:
0   libSystem.B.dylib               0x33b5d268 0x33b5c000 + 4712
1   libSystem.B.dylib               0x33b5f354 0x33b5c000 + 13140
2   CoreFoundation                  0x33a48648 0x33a20000 + 165448
3   CoreFoundation                  0x33a47ed2 0x33a20000 + 163538
4   CoreFoundation                  0x33a47c80 0x33a20000 + 162944
5   CoreFoundation                  0x33a47b88 0x33a20000 + 162696
6   MapKit                          0x31bf327e 0x31be4000 + 62078
7   Foundation                      0x33624192 0x33619000 + 45458
8   Foundation                      0x3361d242 0x33619000 + 16962
9   libSystem.B.dylib               0x33bd6886 0x33b5c000 + 501894
10  libSystem.B.dylib               0x33bcba88 0x33b5c000 + 457352

Thread 8:
0   libSystem.B.dylib               0x33bd79e0 0x33b5c000 + 506336
1   libSystem.B.dylib               0x33bd7364 0x33b5c000 + 504676
2   libSystem.B.dylib               0x33bcf970 0x33b5c000 + 473456

Thread 9:
0   libSystem.B.dylib               0x33bd79e0 0x33b5c000 + 506336
1   libSystem.B.dylib               0x33bd7364 0x33b5c000 + 504676
2   libSystem.B.dylib               0x33bcf970 0x33b5c000 + 473456

Thread 0 crashed with ARM Thread State:
    r0: 0x00000000    r1: 0x41a00000      r2: 0x00000000      r3: 0x41a00000
    r4: 0x00000000    r5: 0x32373953      r6: 0x00153120      r7: 0x2fdfe52c
    r8: 0x001e0cb0    r9: 0x001c62e8     r10: 0x00155a20     r11: 0x00153120
    ip: 0x2fdfe45c    sp: 0x2fdfe4f8      lr: 0x2fdfe4f8      pc: 0x31c0933c
  cpsr: 0x600f0030

Using the atos command on line 33 and 34 return some comprehensive result. Using it on line 0 just returns the given param value 0x31c0933c.

Does that mean that the app crashed into the mapKit and that I can't do anything ?

2条回答
仙女界的扛把子
2楼-- · 2019-07-18 17:58

The best way that I know of it that you need to do a 'Build and Archive' of your code from the build menu. As long as you have an archived version of a particular app in your XCode, when you import any relevant crash logs from a device, they will be automatically symbolicated.

EDIT: Also found this question which might shed some light on some good tips; Symbolicating iPhone App Crash Reports

查看更多
Ridiculous、
3楼-- · 2019-07-18 18:18

This is the command you must use:

symbolicatecrash crashreport.crash myApp.app.dSYM
查看更多
登录 后发表回答