我最近在应用商店发布了一个应用更新。并且报告了一些崩溃,我可以在崩溃部分下的 Xcode 管理器窗口中查看这些崩溃。但是,当我从 Finder 窗口打开本地符号化的崩溃报告时,我发现 Xcode Organizer 中提到的设备名称和硬件模型之间存在差异。
如上图所示,管理器窗口中的设备显示为 iPhone 4。
Incident Identifier: 5A59A68B-7A0D-491B-865A-C37D5C9BA122
Hardware Model: iPhone12,5
Process: My_App [15568]
Path: /private/var/containers/Bundle/Application/212B5311-CCE3-46F1-9F94-11BB09B4391D/My_App.app/My_App
Identifier: com.MyApp
Version: 4.0.0 (4.0.0.8)
AppStoreTools: 13A1030d
Code Type: ARM-64 (Native)
Role: Foreground
Parent Process: launchd [1]
Coalition: com.MyApp [3842]
Date/Time: 2022-01-11 10:46:03.1159 -0500
Launch Time: 2022-01-11 10:45:50.4872 -0500
OS Version: iPhone OS 15.2 (19C56)
Release Type: User
Baseband Version: 3.01.02
Report Version: 104
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Triggered by Thread: 6
Last Exception Backtrace:
0 CoreFoundation 0x1817850fc __exceptionPreprocess + 220 (NSException.m:200)
1 libobjc.A.dylib 0x199fc0d64 objc_exception_throw + 60 (objc-exception.mm:565)
2 AVFCapture 0x1a0171d8c -[AVCaptureSession startRunning] + 308 (AVCaptureSession.m:1935)
3 My_App 0x104d2acc0 closure #1 in closure #1 in CameraScanner.startCapturing() + 592 (CameraScanner.swift:207)
4 My_App 0x104d2a94c closure #1 in CameraScanner.startCapturing() + 172 (VideoPermission.swift:17)
5 My_App 0x104d28ac0 thunk for @escaping @callee_guaranteed () -> () + 20 (<compiler-generated>:0)
6 libdispatch.dylib 0x1813f5924 _dispatch_call_block_and_release + 32 (init.c:1517)
7 libdispatch.dylib 0x1813f7670 _dispatch_client_callout + 20 (object.m:560)
8 libdispatch.dylib 0x1813fedf4 _dispatch_lane_serial_drain + 672 (inline_internal.h:2601)
9 libdispatch.dylib 0x1813ff968 _dispatch_lane_invoke + 392 (queue.c:3937)
10 libdispatch.dylib 0x18140a1b8 _dispatch_workloop_worker_thread + 656 (queue.c:6727)
11 libsystem_pthread.dylib 0x1f21570f4 _pthread_wqthread + 288 (pthread.c:2599)
12 libsystem_pthread.dylib 0x1f2156e94 start_wqthread + 8
Thread 0 name:
Thread 0:
0 libsystem_kernel.dylib 0x00000001b8cb9504 mach_msg_trap + 8
1 libsystem_kernel.dylib 0x00000001b8cb9b9c mach_msg + 76 (mach_msg.c:119)
2 CoreFoundation 0x00000001816f3738 __CFRunLoopServiceMachPort + 372 (CFRunLoop.c:2646)
3 CoreFoundation 0x00000001816f7a2c __CFRunLoopRun + 1212 (CFRunLoop.c:3000)
4 CoreFoundation 0x000000018170b468 CFRunLoopRunSpecific + 600 (CFRunLoop.c:3268)
5 AVFCore 0x000000018ab70d8c -[AVRunLoopCondition _waitInMode:untilDate:] + 412 (AVRunLoopCondition.m:174)
6 AVFCapture 0x00000001a01ea958 -[AVCaptureSession _buildAndRunGraph:] + 1168 (AVCaptureSession.m:3065)
7 AVFCapture 0x00000001a01617d4 -[AVCaptureSession _commitConfiguration] + 148 (AVCaptureSession.m:1012)
8 Foundation 0x0000000182f410dc NSKeyValueNotifyObserver + 292 (NSKeyValueObserving.m:433)
9 Foundation 0x0000000182f2cda0 NSKeyValueDidChange + 356 (NSKeyValueObserving.m:552)
10 Foundation 0x0000000182f66518 NSKeyValueDidChangeWithPerThreadPendingNotifications + 160 (NSKeyValueObserving.m:1209)
11 My_App 0x0000000104d2adc0 closure #1 in CameraScanner.configureWorkItem() + 100 (CameraScanner.swift:192)
12 My_App 0x0000000104d28ac0 thunk for @escaping @callee_guaranteed () -> () + 20 (<compiler-generated>:0)
13 libdispatch.dylib 0x0000000181406454 _dispatch_block_async_invoke2 + 148 (queue.c:548)
14 libdispatch.dylib 0x00000001813f7670 _dispatch_client_callout + 20 (object.m:560)
15 libdispatch.dylib 0x0000000181405b70 _dispatch_main_queue_callback_4CF + 944 (inline_internal.h:2601)
16 CoreFoundation 0x000000018173dd84 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 16 (CFRunLoop.c:1795)
17 CoreFoundation 0x00000001816f7f5c __CFRunLoopRun + 2540 (CFRunLoop.c:3144)
18 CoreFoundation 0x000000018170b468 CFRunLoopRunSpecific + 600 (CFRunLoop.c:3268)
19 GraphicsServices 0x000000019d29738c GSEventRunModal + 164 (GSEvent.c:2200)
20 UIKitCore 0x00000001840ad088 -[UIApplication _run] + 1100 (UIApplication.m:3493)
21 UIKitCore 0x0000000183e2b958 UIApplicationMain + 2092 (UIApplication.m:5046)
22 My_App 0x0000000104c56034 main + 68 (LAContextExtension.swift:12)
23 dyld 0x0000000104fa5aa4 start + 520 (dyldMain.cpp:879)
Thread 1:
0 libsystem_pthread.dylib 0x00000001f2156e8c start_wqthread + 0
Thread 2 name:
Thread 2:
0 libsqlite3.dylib 0x00000001a0080294 tokenExpr + 268 (sqlite3.c:0)
1 libsqlite3.dylib 0x00000001a0080204 tokenExpr + 124 (sqlite3.c:165844)
2 libsqlite3.dylib 0x000000019ffb5254 yy_reduce + 2448 (sqlite3.c:169951)
3 libsqlite3.dylib 0x000000019ffb38ec sqlite3RunParser + 796 (sqlite3.c:170882)
4 libsqlite3.dylib 0x000000019ffb2f80 sqlite3Prepare + 432 (sqlite3.c:139396)
5 libsqlite3.dylib 0x000000019ffb2c24 sqlite3LockAndPrepare + 244 (sqlite3.c:139474)
6 My_App 0x0000000104db66dc -[APMSqliteStore prepareSQL:error:] + 236
7 My_App 0x0000000104db72e8 -[APMSqliteStore upsertStatementForRecord:inTableWithName:error:] + 572
8 My_App 0x0000000104db4dec -[APMSqliteStore upsertRecord:inTableWithName:error:] + 200
9 My_App 0x0000000104d5464c -[APMDatabase insertDataType:inTableWithName:error:] + 144
10 My_App 0x0000000104d4a050 -[APMDatabase insertRawEvent:metadataFingerprint:isRealtime:error:] + 684
11 My_App 0x0000000104d7bc90 -[APMMeasurement+ 1244304 (Event) writeEvent:isPublicEvent:isRealtime:] + 1944
12 My_App 0x0000000104d78fa8 __49-[APMMeasurement+ 1232808 (Event) writeEventOnWorkerQueue:]_block_invoke + 604
13 My_App 0x0000000104db6110 -[APMSqliteStore performTransactionWithError:block:] + 176
14 My_App 0x0000000104d488d4 -[APMDatabase performTransaction:] + 48
15 My_App 0x0000000104d78c6c -[APMMeasurement+ 1231980 (Event) writeEventOnWorkerQueue:] + 820
16 My_App 0x0000000104d787c8 -[APMMeasurement+ 1230792 (Event) handleEventOnWorkerQueue:] + 540
17 My_App 0x0000000104d86bfc -[APMMeasurement logEventOnWorkerQueue:notifyEventListeners:] + 76
18 My_App 0x0000000104d86bac -[APMMeasurement logEventOnWorkerQueueWithOrigin:isPublicEvent:name:parameters:timestamp:enabled:ignoreEnabled:ignoreInterceptor:interceptor:addedScreenParameters:] + 708
19 My_App 0x0000000104d86840 __151-[APMMeasurement logEventWithOrigin:isPublicEvent:name:parameters:timestamp:enabled:ignoreEnabled:ignoreInterceptor:interceptor:addedScreenParameters:]_block_invoke + 68
20 My_App 0x0000000104dab210 __51-[APMScheduler scheduleOnWorkerQueueBlockID:block:]_block_invoke + 44
21 libdispatch.dylib 0x00000001813f5924 _dispatch_call_block_and_release + 32 (init.c:1517)
22 libdispatch.dylib 0x00000001813f7670 _dispatch_client_callout + 20 (object.m:560)
23 libdispatch.dylib 0x00000001813fedf4 _dispatch_lane_serial_drain + 672 (inline_internal.h:2601)
24 libdispatch.dylib 0x00000001813ff968 _dispatch_lane_invoke + 392 (queue.c:3937)
25 libdispatch.dylib 0x000000018140a1b8 _dispatch_workloop_worker_thread + 656 (queue.c:6727)
26 libsystem_pthread.dylib 0x00000001f21570f4 _pthread_wqthread + 288 (pthread.c:2599)
27 libsystem_pthread.dylib 0x00000001f2156e94 start_wqthread + 8
Thread 3:
0 libsystem_pthread.dylib 0x00000001f2156e8c start_wqthread + 0
Thread 4 name:
Thread 4:
0 libsystem_kernel.dylib 0x00000001b8cb9504 mach_msg_trap + 8
1 libsystem_kernel.dylib 0x00000001b8cb9b9c mach_msg + 76 (mach_msg.c:119)
2 CoreFoundation 0x00000001816f3738 __CFRunLoopServiceMachPort + 372 (CFRunLoop.c:2646)
3 CoreFoundation 0x00000001816f7a2c __CFRunLoopRun + 1212 (CFRunLoop.c:3000)
4 CoreFoundation 0x000000018170b468 CFRunLoopRunSpecific + 600 (CFRunLoop.c:3268)
5 Foundation 0x0000000182f27c94 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 236 (NSRunLoop.m:373)
6 Foundation 0x0000000182f68dc8 -[NSRunLoop(NSRunLoop) runUntilDate:] + 92 (NSRunLoop.m:420)
7 UIKitCore 0x0000000184026230 -[UIEventFetcher threadMain] + 524 (UIEventFetcher.m:1167)
8 Foundation 0x0000000182f7740c __NSThread__start__ + 808 (NSThread.m:972)
9 libsystem_pthread.dylib 0x00000001f21579a4 _pthread_start + 148 (pthread.c:891)
10 libsystem_pthread.dylib 0x00000001f2156ea0 thread_start + 8
Thread 5:
0 libsystem_pthread.dylib 0x00000001f2156e8c start_wqthread + 0
Thread 6 name:
Thread 6 Crashed:
0 libsystem_kernel.dylib 0x00000001b8cbf964 __pthread_kill + 8
1 libsystem_pthread.dylib 0x00000001f215d378 pthread_kill + 268 (pthread.c:1668)
2 libsystem_c.dylib 0x000000018c648f50 abort + 164 (abort.c:118)
3 libc++abi.dylib 0x000000019a0c8bc4 abort_message + 132 (abort_message.cpp:78)
4 libc++abi.dylib 0x000000019a0b9fd8 demangling_terminate_handler() + 332 (cxa_default_handlers.cpp:71)
5 libobjc.A.dylib 0x0000000199fc6e34 _objc_terminate() + 144 (objc-exception.mm:701)
6 libc++abi.dylib 0x000000019a0c7f58 std::__terminate(void (*)()) + 20 (cxa_handlers.cpp:59)
7 libc++abi.dylib 0x000000019a0c7ef4 std::terminate() + 64 (cxa_handlers.cpp:88)
8 libdispatch.dylib 0x00000001813f7684 _dispatch_client_callout + 40 (object.m:563)
9 libdispatch.dylib 0x00000001813fedf4 _dispatch_lane_serial_drain + 672 (inline_internal.h:2601)
10 libdispatch.dylib 0x00000001813ff968 _dispatch_lane_invoke + 392 (queue.c:3937)
11 libdispatch.dylib 0x000000018140a1b8 _dispatch_workloop_worker_thread + 656 (queue.c:6727)
12 libsystem_pthread.dylib 0x00000001f21570f4 _pthread_wqthread + 288 (pthread.c:2599)
13 libsystem_pthread.dylib 0x00000001f2156e94 start_wqthread + 8
Thread 7:
0 libsystem_pthread.dylib 0x00000001f2156e8c start_wqthread + 0
Thread 8 name:
Thread 8:
0 libsystem_kernel.dylib 0x00000001b8cb9504 mach_msg_trap + 8
1 libsystem_kernel.dylib 0x00000001b8cb9b9c mach_msg + 76 (mach_msg.c:119)
2 CoreFoundation 0x00000001816f3738 __CFRunLoopServiceMachPort + 372 (CFRunLoop.c:2646)
3 CoreFoundation 0x00000001816f7a2c __CFRunLoopRun + 1212 (CFRunLoop.c:3000)
4 CoreFoundation 0x000000018170b468 CFRunLoopRunSpecific + 600 (CFRunLoop.c:3268)
5 CFNetwork 0x000000018217f3f0 +[__CFN_CoreSchedulingSetRunnable _run:] + 464 (CoreSchedulingSet.mm:1372)
6 Foundation 0x0000000182f7740c __NSThread__start__ + 808 (NSThread.m:972)
7 libsystem_pthread.dylib 0x00000001f21579a4 _pthread_start + 148 (pthread.c:891)
8 libsystem_pthread.dylib 0x00000001f2156ea0 thread_start + 8
Thread 9 name:
Thread 9:
0 libsystem_kernel.dylib 0x00000001b8cb9504 mach_msg_trap + 8
1 libsystem_kernel.dylib 0x00000001b8cb9b9c mach_msg + 76 (mach_msg.c:119)
2 CoreFoundation 0x00000001816f3738 __CFRunLoopServiceMachPort + 372 (CFRunLoop.c:2646)
3 CoreFoundation 0x00000001816f7a2c __CFRunLoopRun + 1212 (CFRunLoop.c:3000)
4 CoreFoundation 0x000000018170b468 CFRunLoopRunSpecific + 600 (CFRunLoop.c:3268)
5 AudioSession 0x000000018ab1e308 CADeprecated::GenericRunLoopThread::Entry(void*) + 164 (GenericRunLoopThread.h:95)
6 AudioSession 0x000000018ab27d64 CADeprecated::CAPThread::Entry(CADeprecated::CAPThread*) + 92 (CAPThread.cpp:324)
7 libsystem_pthread.dylib 0x00000001f21579a4 _pthread_start + 148 (pthread.c:891)
8 libsystem_pthread.dylib 0x00000001f2156ea0 thread_start + 8
Thread 6 crashed with ARM Thread State (64-bit):
x0: 0x0000000000000000 x1: 0x0000000000000000 x2: 0x0000000000000000 x3: 0x0000000000000000
x4: 0x000000019a0cc0ad x5: 0x000000016b582440 x6: 0x000000000000006e x7: 0x0000000000000800
x8: 0xa0731984927acb78 x9: 0xa0731985f922fb78 x10: 0x0000000000000002 x11: 0x000000000000000b
x12: 0x00000000f381e80f x13: 0x000000007381e800 x14: 0x0000000000000010 x15: 0x0000000000000002
x16: 0x0000000000000148 x17: 0x000000016b583000 x18: 0x0000000000000000 x19: 0x0000000000000006
x20: 0x0000000000003703 x21: 0x000000016b5830e0 x22: 0x0000000000000000 x23: 0x000000016b5830e0
x24: 0x00000002817abee8 x25: 0x0000000000000000 x26: 0x0000000000000114 x27: 0x0000000000000000
x28: 0x0000000282ccc840 fp: 0x000000016b5823b0 lr: 0x00000001f215d378
sp: 0x000000016b582390 pc: 0x00000001b8cbf964 cpsr: 0x40000000
esr: 0x56000080 Address size fault
Binary Images:
0x104c4c000 - 0x104e0ffff My_App arm64 <dee02279d86431709c9bd750b7483261> /private/var/containers/Bundle/Application/212B5311-CCE3-46F1-9F94-11BB09B4391D/My_App.app/My_App
0x104f8c000 - 0x104fe3fff dyld arm64e <f94ccc7a6d1a33c7997ff611a6caa7e0> /usr/lib/dyld
0x1813f3000 - 0x181439fff libdispatch.dylib arm64e <edd169e1d0db3808a19e99c1cd5a1c4c> /usr/lib/system/libdispatch.dylib
0x1816ec000 - 0x181b3ffff CoreFoundation arm64e <16faa70c278c3561859ecec407c2dc7c> /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation
0x181f05000 - 0x1823c9fff CFNetwork arm64e <b63d7160ebc33de7b98bca51e08b72f1> /System/Library/Frameworks/CFNetwork.framework/CFNetwork
0x182f0f000 - 0x183215fff Foundation arm64e <9618b2f2a4c23e07b7eed8d9e1bdeaec> /System/Library/Frameworks/Foundation.framework/Foundation
0x183b93000 - 0x18541dfff UIKitCore arm64e <cd7f7ba2a2c63727aff69baab60cc6ab> /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore
0x18ab18000 - 0x18ab41fff AudioSession arm64e <8fa06a47169f3f56bc5b2ad366ad8f9e> /System/Library/PrivateFrameworks/AudioSession.framework/AudioSession
0x18ab42000 - 0x18ad54fff AVFCore arm64e <f013e5685ba83213b017ab4381c03131> /System/Library/PrivateFrameworks/AVFCore.framework/AVFCore
0x18c629000 - 0x18c6a7fff libsystem_c.dylib arm64e <f3afe30409793cba8338bebe9722ecd8> /usr/lib/system/libsystem_c.dylib
0x199fab000 - 0x199fe4fff libobjc.A.dylib arm64e <73e920f0e7ce394197d87a10dd2cd390> /usr/lib/libobjc.A.dylib
0x19a0b5000 - 0x19a0cefff libc++abi.dylib arm64e <71b1e39fb291315daf46a4343e707387> /usr/lib/libc++abi.dylib
0x19d296000 - 0x19d29efff GraphicsServices arm64e <064a1bb60e413ad2a402fb563fc141f5> /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices
0x19ffa9000 - 0x1a013bfff libsqlite3.dylib arm64e <adece8478f3b3ba494e3901286e0af41> /usr/lib/libsqlite3.dylib
0x1a013c000 - 0x1a0238fff AVFCapture arm64e <2b0d03c3a03c371e946dc36ef8318451> /System/Library/PrivateFrameworks/AVFCapture.framework/AVFCapture
0x1b8cb8000 - 0x1b8cebfff libsystem_kernel.dylib arm64e <eb3e47f3395335839feefb6cff8a8d7a> /usr/lib/system/libsystem_kernel.dylib
0x1f2156000 - 0x1f2161fff libsystem_pthread.dylib arm64e <c5c27e9d955739c9b9c65f6e7323ee1c> /usr/lib/system/libsystem_pthread.dylib
EOF
在上面的崩溃日志中,硬件型号是 iPhone12,5。
为什么两者之间会出现这种差异?顺便提一下,上面的崩溃报告是使用 Xcode 本身符号化的,然后我从 Finder 窗口复制了它。我没有在终端中使用 symoblicatecrash 工具。但是使用它也是一样的。
另外,在这种情况下,有人可以帮助解决实际的崩溃吗?我们有一个 CameraScanner 类,我们在其中实现了使用 AVCaptureSession 扫描 QRCode 的功能。如果需要,我也可以复制一些代码。