【问题标题】:XCode 11 crash after adding iOS 14 device support添加 iOS 14 设备支持后 XCode 11 崩溃
【发布时间】:2021-06-27 16:58:43
【问题描述】:

我的 XCode 版本是 11.1,iPhone OS 版本是 14.0.1。在 iOS 14 上运行应用程序 设备,它需要 XCode 12。

在 XCode 11 中支持 iOS 14 的另一个选项是添加设备支持。所以我通过以下方式添加了对 iOS 14 的设备支持 -

转到 Applications > Xcode > 右键单击​​ > Show Package Contents > Contents > Developer > Platforms > iPhoneOS.platform > DeviceSupport

然后在此目录下添加设备支持文件。

设备支持文件可在此处获得 - https://github.com/filsv/iPhoneOSDeviceSupport

添加设备支持后,每当我尝试在 iPhone 设备上运行它时,它会立即显示“构建成功”消息,然后 XCode 崩溃。

这是构建错误日志 -

Process:               Xcode [1314]
Path:                  /Applications/Xcode.app/Contents/MacOS/Xcode
Identifier:            com.apple.dt.Xcode
Version:               11.1 (15405)
Build Info:            IDEFrameworks-15405000000000000~13
App Item ID:           497799835
App External ID:       832925179
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           Xcode [1314]
User ID:               501

Date/Time:             2021-03-31 20:33:14.126 +0600
OS Version:            Mac OS X 10.14.6 (18G95)
Report Version:        12
Bridge OS Version:     3.6 (16P6571)
Anonymous UUID:        13DE45B0-BCED-AB3D-BEDF-B4704CEFE0C2


Time Awake Since Boot: 630 seconds

System Integrity Protection: enabled

Crashed Thread:        18  Dispatch queue: Mutex to protect _hasPerformedWorkerAction

Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Application Specific Information:
com.apple.main-thread
ProductBuildVersion: 11A1027
UNCAUGHT EXCEPTION (NSInternalInconsistencyException): Invalid parameter not satisfying: aString != nil
UserInfo: (null)
Hints: 
  0: Calling block provided to DVTSyncPerformBlock() here:
 
  0   DVTSyncPerformBlock (in DVTFoundation)
  1   -[IDEExecutionRunnableTracker executionWantsHold:withError:] (in IDEFoundation)
  2   -[IDERunOperationWorker _startWithRetrying:] (in IDEFoundation)
  3   __44-[IDERunOperationWorker _startWithRetrying:]_block_invoke_3 (in IDEFoundation)
  4   __48-[DVTDispatchLock_Recursive performLockedBlock:]_block_invoke (in DVTFoundation)
  5   _dispatch_client_callout (in libdispatch.dylib)
  6   _dispatch_lane_barrier_sync_invoke_and_complete (in libdispatch.dylib)
  7   DVTDispatchBarrierSync (in DVTFoundation)
  8   -[DVTDispatchLock performLockedBlock:] (in DVTFoundation)
  9   -[DVTDispatchLock_Recursive performLockedBlock:] (in DVTFoundation)
 10   __44-[IDERunOperationWorker _startWithRetrying:]_block_invoke_2 (in IDEFoundation)
 11   __DVT_CALLING_CLIENT_BLOCK__ (in DVTFoundation)
 12   __DVTDispatchAfter_block_invoke (in DVTFoundation)
 13   _dispatch_client_callout (in libdispatch.dylib)
 14   _dispatch_continuation_pop (in libdispatch.dylib)
 15   _dispatch_source_invoke (in libdispatch.dylib)
 16   _dispatch_continuation_pop (in libdispatch.dylib)
 17   _dispatch_async_redirect_invoke (in libdispatch.dylib)
 18   _dispatch_root_queue_drain (in libdispatch.dylib)
 19   _dispatch_worker_thread2 (in libdispatch.dylib)
 20   _pthread_wqthread (in libsystem_pthread.dylib)
 21   start_wqthread (in libsystem_pthread.dylib)
 
Backtrace:
  0   __exceptionPreprocess (in CoreFoundation)
  1   DVTFailureHintExceptionPreprocessor (in DVTFoundation)
  2   objc_exception_throw (in libobjc.A.dylib)
  3   +[NSException raise:format:arguments:] (in CoreFoundation)
  4   -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] (in Foundation)
  5   -[NSCell _objectValue:forString:errorDescription:] (in AppKit)
  6   -[NSCell setStringValue:] (in AppKit)
  7   -[NSControl setStringValue:] (in AppKit)
  8   -[IDEExecutionHoldAlertHelper showAlert] (in IDEKit)
  9   -[IDEWorkspaceTabController showExecutionHoldAlertWithError:] (in IDEKit)
 10   __55-[IDEWorkspaceDocument _setupLaunchSessionsObservation]_block_invoke_2 (in IDEKit)
 11   -[DVTObservingBlockToken observeValueForKeyPath:ofObject:change:context:] (in DVTFoundation)
 12   NSKeyValueNotifyObserver (in Foundation)
 13   NSKeyValueDidChange (in Foundation)
 14   -[NSObject(NSKeyValueObservingPrivate) _changeValueForKeys:count:maybeOldValuesDict:maybeNewValuesDict:usingBlock:] (in Foundation)
 15   -[NSObject(NSKeyValueObservingPrivate) _changeValueForKey:key:key:usingBlock:] (in Foundation)
 16   _NSSetCharValueAndNotify (in Foundation)
 17   -[IDEExecutionTracker _updateWantsHold] (in IDEFoundation)
 18   __37-[IDEExecutionTracker addSubtracker:]_block_invoke (in IDEFoundation)
 19   -[DVTObservingBlockToken observeValueForKeyPath:ofObject:change:context:] (in DVTFoundation)
 20   NSKeyValueNotifyObserver (in Foundation)
 21   NSKeyValueDidChange (in Foundation)
 22   -[NSObject(NSKeyValueObservingPrivate) _changeValueForKeys:count:maybeOldValuesDict:maybeNewValuesDict:usingBlock:] (in Foundation)
 23   -[NSObject(NSKeyValueObservingPrivate) _changeValueForKey:key:key:usingBlock:] (in Foundation)
 24   _NSSetCharValueAndNotify (in Foundation)
 25   __60-[IDEExecutionRunnableTracker executionWantsHold:withError:]_block_invoke (in IDEFoundation)
 26   __DVT_CALLING_CLIENT_BLOCK__ (in DVTFoundation)
 27   __DVTSyncPerformBlock_block_invoke.48 (in DVTFoundation)
 28   DVTInvokeWithLazyFailureHint (in DVTFoundation)
 29   __DVTSyncPerformBlock_block_invoke (in DVTFoundation)
 30   __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ (in CoreFoundation)
 31   __CFRunLoopDoBlocks (in CoreFoundation)
 32   __CFRunLoopRun (in CoreFoundation)
 33   CFRunLoopRunSpecific (in CoreFoundation)
 34   RunCurrentEventLoopInMode (in HIToolbox)
 35   ReceiveNextEventCommon (in HIToolbox)
 36   _BlockUntilNextEventMatchingListInModeWithFilter (in HIToolbox)
 37   _DPSNextEvent (in AppKit)
 38   -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] (in AppKit)
 39   -[DVTApplication nextEventMatchingMask:untilDate:inMode:dequeue:] (in DVTKit)
 40   -[NSApplication run] (in AppKit)
 41   NSApplicationMain (in AppKit)
 42   main (in Xcode)
 43   start (in libdyld.dylib)
 
abort() called

Application Specific Signatures:
NSInternalInconsistencyException

【问题讨论】:

  • 为什么不以正确的方式使用 Xcode 12?
  • 嗨@matt,由于某些安全原因,无法升级 XCode 或 Mac OS。这就是我尝试使用现有资源的原因。
  • 我已将我的 iPhone 操作系统升级到 14.4.2。现在我在尝试从 Xcode 11 运行时遇到了另一个问题,它显示“无法从该设备复制符号”。

标签: ios iphone xcode xcode11 ios14


【解决方案1】:

有一个安全增强功能可以阻止 Xcode 11 与 iOS 14 一起工作(可能是导致崩溃的根本原因),但https://betterprogramming.pub/debugging-on-ios-14-with-xcode-11-d332f12f49dd 有一个解决方法(以及许多其他有用的信息),它解释了如何启动、登录和调试。

【讨论】:

  • 我自己也遇到过这种问题。试试stackoverflow.com/a/39029595/2715565 看看是否有帮助。
  • 感谢您分享链接。我已经尝试了所有这些但不起作用。我一直面临这个问题'无法从这个设备复制符号'。类似问题github.com/iGhibli/iOS-DeviceSupport/issues/134
  • 缩小范围的一种方法是从手机中提取控制台日志。如果您可以这样做并在出现问题时共享控制台消息,它可能会指出问题所在。另外,您的电缆是 Apple 制造的吗?它是否直接连接到计算机(无集线器)?否则可能会出现故障。
猜你喜欢
  • 2018-03-02
  • 1970-01-01
  • 2019-11-21
  • 1970-01-01
  • 2017-12-02
  • 1970-01-01
  • 2015-01-08
  • 2020-03-03
  • 1970-01-01
相关资源
最近更新 更多