来自 Apple 评论的符号化 iOS 崩溃报告仍然不可读

Symbolicated iOS crash report from Apple review still not readable

我收到了 Apple 的崩溃报告,并在 this document 之后对其进行了符号化,但我仍然不理解该报告。

首先,我在下面尝试 "XCode approach" 对报告进行符号化:

  1. Connect an iOS device to your Mac
  2. Choose "Devices" from the "Window" menu
  3. Under the "DEVICES" section in the left column, choose a device
  4. Click the "View Device Logs" button under the "Device Information" section on the right hand panel
  5. Drag your crash report onto the left column of the presented panel
  6. Xcode will automatically symbolicate the crash report and display the results

在此之前,我通过 'Organizer' 从 App Store 下载了 dSYM 文件,并将它们复制到一个单独的文件夹中。但是所有符号化的名字都是这样的:

5   Recycling                       0x10103b464 fb1UCM8vZCiE + 355
6   Recycling                       0x1010431d4 fbkUVUzGnhkS + 1655
7   Recycling                       0x101038a78 fbIiaWxkoUb6 + 307

然后,我尝试了this blog的方法,但问题仍然存在:

{"app_name":"Recycling","timestamp":"2020-02-08 00:00:51.02 +0800","app_version":"1.7.3","slice_uuid":"20cdeb29-1f14-3298-9649-503635ded968","adam_id":1406292831,"build_version":"3","bundleID":"com.qdjzd.Recycling","share_with_app_devs":true,"is_first_party":false,"bug_type":"109","os_version":"iPhone OS 13.3.1 (17D50)","incident_id":"36AEED5C-F4AD-4711-926E-783D4783039E","name":"Recycling"}
Incident Identifier: 36AEED5C-F4AD-4711-926E-783D4783039E
CrashReporter Key:   665569f89a7cca0567f04077cd6e5757ddeffea5
Hardware Model:      xxx1
Process:             Recycling [6029]
Path:                /private/var/containers/Bundle/Application/0A62AE5B-BE91-4A30-8CB5-A6137DE9DCC1/Recycling.app/Recycling
Identifier:          com.qdjzd.Recycling
Version:             3 (1.7.3)
AppStoreTools:       11C29
Code Type:           ARM-64 (Native)
Role:                Foreground
Parent Process:      launchd [1]
Coalition:           com.qdjzd.Recycling [1787]


Date/Time:           2020-02-08 00:00:50.8368 +0800
Launch Time:         2020-02-08 00:00:22.0052 +0800
OS Version:          iPhone OS 13.3.1 (17D50)
Release Type:        User
Baseband Version:    n/a
Report Version:      104

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note:  EXC_CORPSE_NOTIFY
Triggered by Thread:  11

Last Exception Backtrace:
0   CoreFoundation                  0x1abab8a48 0x1ab98d000 + 1227336
1   libobjc.A.dylib                 0x1ab7dffa4 0x1ab7da000 + 24484
2   CoreFoundation                  0x1ab9c0e34 0x1ab98d000 + 212532
3   CoreServices                    0x1ac1232d8 0x1ac056000 + 840408
4   Foundation                      0x1abd736f8 0x1abd69000 + 42744
5   Recycling                       0x10103b464 fb1UCM8vZCiE + 355
6   Recycling                       0x1010431d4 fbkUVUzGnhkS + 1655
7   Recycling                       0x101038a78 fbIiaWxkoUb6 + 307
8   libsystem_pthread.dylib         0x1ab7d3d8c 0x1ab7c9000 + 44428
9   libsystem_pthread.dylib         0x1ab7d776c 0x1ab7c9000 + 59244

谁能帮帮我?

在Xcode10中您可以按照以下步骤操作:

在 Organizer 中,找到应用程序所基于的存档。 单击下载调试符号按钮。您的下载文件夹中不会出现任何内容,但没关系。 将构建机器连接到 iOS 设备。 Select 设备和模拟器中的设备。 单击查看设备日志按钮。 将崩溃文件拖放到左侧面板。该文件必须以 .crash 扩展名结尾,否则拖动会失败。 切换到所有日志选项卡。 Select 添加的崩溃文件。 该文件应该自动符号化,否则使用右键单击上下文菜单项重新符号化日志。

谢谢大家!我终于自己解决了这个问题。

原因是我使用了一个名为UMCCommon的第3方库,版本为1.5.3,它的所有符号都是混淆,所以我看不懂。