iOS应用由于未知错误NO_CRASH_STACK + 0而崩溃

时间:2020-05-13 09:54:09

标签: ios xcode

用户抱怨应用程序在启动时开始崩溃。用户使用ios 9.3或10.3。由于未知错误,应用程序崩溃。 Crashlytics中未报告此错误。我在Xcode-窗口-管理器-崩溃中看到错误,但是没有详细信息:

NO_CRASH_STACK + 0

在具有iOS 10.3.4的iPhone 5模拟器上运行该应用程序不会导致错误。我在iOS 10.3.4上使用了真正的iPhone 5设备。我从Xcode启动了我的应用程序,该应用程序没有崩溃。从AppStore安装了相同的应用程序-应用程序崩溃。我假设从Xcode启动该应用程序不会崩溃,因为在调试模式下该应用程序无法使用真实的Apple ID访问iTunes Connect。我添加了沙箱帐户而不是真实帐户,我测试了购买情况,使用测试环境和沙箱帐户时应用程序不会崩溃。

如果在iPhone 5上以真实的Apple ID登录,则通过启动应用程序导致崩溃,然后在Xcode-Window-Devices and Simulators中,选择iPhone 5,然后选择View Device Logs。该窗口包含以下信息。

如何确定确切的错误发生位置?是否可以在XCode上的iPhone 5 iOS 10.3.4上使用真实的Apple ID测试到iTunes Connect的连接?我也有iPhone XS max,在此设备上,我可以在XCode调试模式下使用真实的Apple ID连接到iTunes Connect,但在iPhone 5上不能。

Date / Time: 2020-05-13 11: 21: 41.2938 +0300
Launch Time: 2020-05-13 11: 21: 40.0000 +0300
OS Version: iPhone OS 10.3.4 (14G61)
Report Version: 104

Exception Type: EXC_BAD_ACCESS (SIGBUS)
Exception Subtype: KERN_PROTECTION_FAILURE at 0x00b485b0
Termination Signal: Bus error: 10
Termination Reason: Namespace SIGNAL, Code 0xa
Terminating Process: exc handler [0]
Triggered by Thread: 0

Filtered syslog:
None found

Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 ??? 0x00b485b0 0 + 11830704
1   ??? 0x17e57c04 0 + 400915460
2 dyld 0x004d6da4 0x4b2000 + 150948
3 dyld 0x004be150 ImageLoaderMegaDylib :: incrementCoalIterator + 49488 (ImageLoader :: CoalIterator &) + 0

Thread 1:
0 libsystem_pthread.dylib 0x1a84e454 start_wqthread + 0

Thread 2:
0 libsystem_pthread.dylib 0x1a84e454 start_wqthread + 0

Thread 3:
0 libsystem_pthread.dylib 0x1a84e454 start_wqthread + 0

Thread 4 name: com.apple.uikit.eventfetch-thread
Thread 4:
0 libsystem_kernel.dylib 0x1a784900 mach_msg_trap + 20
1 libsystem_kernel.dylib 0x1a7846e0 mach_msg + 44
2 CoreFoundation 0x1af87be2 __CFRunLoopServiceMachPort + 144
3 CoreFoundation 0x1af86064 __CFRunLoopRun + 1436
4 CoreFoundation 0x1aed91ae CFRunLoopRunSpecific + 470
5 CoreFoundation 0x1aed8fd0 CFRunLoopRunInMode + 104
6 Foundation 0x1b82daf4 - [NSRunLoop + 47860 (NSRunLoop) runMode: beforeDate:] + 258
7 Foundation 0x1b84a76c - [NSRunLoop + 165740 (NSRunLoop) runUntilDate:] + 86
8 UIKit 0x20b62ad8 - [UIEventFetcher threadMain] + 128
9 Foundation 0x1b9118ea __NSThread__start__ + 1122
10 libsystem_pthread.dylib 0x1a85093a _pthread_body + 216
11 libsystem_pthread.dylib 0x1a85085c _pthread_start + 234
12 libsystem_pthread.dylib 0x1a84e468 thread_start + 8

Thread 0 crashed with ARM Thread State (32-bit):
    r0: 0x00000000 r1: 0x00000004 r2: 0x00000003 r3: 0x0061c200
    r4: 0x00000005 r5: 0x00000000 r6: 0x00000001 r7: 0x0061c09c
    r8: 0x0061c060 r9: 0x00000000 r10: 0x004c972d r11: 0x004e34dc
    ip: 0x00b32f68 sp: 0x0061c044 lr: 0x00000000 pc: 0x00b485b0
  cpsr: 0x60000010

Binary Images:...

3 个答案:

答案 0 :(得分:0)

在我的情况下是依赖关系问题。 我们使用CocoaPods和SPM。SPM添加的SnapKit在Iphone 5,ios 9上崩溃。

如果使用SPM,请尝试检查依赖性。

答案 1 :(得分:0)

以下是您可以做的事情

  1. 清理构建文件夹
  2. 删除提取的数据
  3. 删除xcode,然后删除库中的developer文件夹

如果可行,请发表评论

答案 2 :(得分:0)

在Apple支持的帮助下解决了问题

编译器中存在一个错误,该错误会生成错误的armv7代码, 导致此崩溃。 Xcode 11.5 Beta中已解决该问题。避免 此错误,请使用Xcode 11.3而不是Xcode 11.4进行编译,并且 禁用位码,以便App Store不会使用 具有此问题的编译器。当Xcode 11.5发布时,请 重新启用位码。