问题描述
当我从通用设备切换到我的 iphone 时,xcode 意外退出.我试过打开其他项目(旧的和新的),但我得到了同样的错误.在更新到 8.3.2 之前我根本没有这个错误
When I switch from generic device to my iphone, xcode unexpectedly quits. I've tried opening other projects (older and newer) and I get the same error. I did not have this error at all before updating to 8.3.2
堆栈跟踪:
Application Specific Information:
MainQueue: -[IDEProvisioningManager _performStateUpdateOnMainThreadForRepairable:updateBlock:]_block_invoke_2
ProductBuildVersion: 8E2002
ASSERTION FAILURE in /Library/Caches/com.apple.xbs/Sources/IDEFrameworks/IDEFrameworks-12175/IDEFoundation/Provisioning/Mechanic/UserActions/IDEProvisioningUserAction.m:125
Details: method -[IDEProvisioningUserAction userActionName] is a responsibility of subclasses of IDEProvisioningPermissionsFailureUserAction
Object: <IDEProvisioningPermissionsFailureUserAction: 0x7fed55a409d0>
Method: -userActionName
Thread: <NSThread: 0x7fed4f516d60>{number = 1, name = main}
Hints:
Backtrace:
0 -[IDEAssertionHandler handleFailureInMethod:object:fileName:lineNumber:assertionSignature:messageFormat:arguments:] (in IDEKit)
1 _DVTAssertionHandler (in DVTFoundation)
2 _DVTAssertionFailureHandler (in DVTFoundation)
3 -[IDEProvisioningUserAction userActionName] (in IDEFoundation)
4 -[IDEProvisioningRepairStateInfo setWaitingForUserAction:] (in IDEFoundation)
5 ___DVTAsyncPerformBlockOnMainRunLoop_block_invoke (in DVTFoundation)
6 __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ (in CoreFoundation)
7 __CFRunLoopDoBlocks (in CoreFoundation)
8 __CFRunLoopRun (in CoreFoundation)
9 CFRunLoopRunSpecific (in CoreFoundation)
10 RunCurrentEventLoopInMode (in HIToolbox)
11 ReceiveNextEventCommon (in HIToolbox)
12 _BlockUntilNextEventMatchingListInModeWithFilter (in HIToolbox)
13 _DPSNextEvent (in AppKit)
14 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] (in AppKit)
15 -[DVTApplication nextEventMatchingMask:untilDate:inMode:dequeue:] (in DVTKit)
16 -[NSApplication run] (in AppKit)
17 NSApplicationMain (in AppKit)
18 start (in libdyld.dylib)
abort() called
推荐答案
Xcode 崩溃是因为 Apple 证书中的权限不足,无法将设备的 UDID 添加到证书本身(它没有简单地说).如果您拥有苹果证书的管理员权限或苹果设备的UDID已经添加到苹果证书中,则不会发生此错误.我仍然不知道为什么我的个人开发人员团队"仍然导致 Xcode 崩溃,因为它与苹果证书无关.
Xcode was crashing due to insufficient permission in the apple certificate to be able to add the device's UDID to the certificate itself (Which it did not simply say). This error will not happen if you have administrator permission with the apple certificate or the UDID of the apple device has already been added to the apple certificate. I still have no clue to why my personal developer "Team" still resulted in Xcode crashing as it has no relation to the apple certificate.
此问题的两种解决方案:
Two solutions to this problem:
- 只需为自己(开发者帐户)管理员授予苹果证书(它会自动将您的 UDID 添加到证书中)
- 请苹果证书管理员将苹果设备的UDID添加到证书中即可
获取设备的 UDID 或标识符:在 Xcode 菜单栏中,单击 Window > Devices,然后选择您的 Apple 设备,您应该会看到标识符:XXXXXXXXXXXXXX"或 UDID
Getting the UDID or Identifier of the device:Within Xcode menu bar, Click Window > Devices, and then select your apple device and you should see the "Identifier: XXXXXXXXXXXXX" or UDID
这篇关于Xcode 8.3.2 切换设备时崩溃的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!