Xcode 9 iOS 模拟器 - 无法获得有效的进程句柄
Xcode 9 iOS Simulator - Unable To Obtain Valid Process Handle
我已经升级到 Xcode 9,但 10.3 和 11 的 iOS 模拟器不工作。尝试 运行.
时,所有股票和我的应用程序都被强制关闭
Xcode 当我尝试 运行 日历、首选项等时显示如下所示的控制台错误。"Unable to obtain valid process handle" 是什么意思?
Process handle (com.apple.Preferences, <BSProcessHandle: 0x7fe84552b8b0; Preferences:9270; valid: NO>) is invalid. Returning error {
BKSProcessExitReason = 0;
BKSProcessJobLabel = "UIKitApplication:com.apple.Preferences[0x90bf][6825]";
NSLocalizedFailureReason = "Unable to obtain valid process handle";
}
[com.apple.Preferences] Bootstrap failed with error: <NSError: 0x600000846c60; domain: BKSProcessErrorDomain; code: 1 (bootstrap-failed); reason: "Unable to obtain valid process handle">
Bootstrapping failed for <FBApplicationProcess: 0x7ffae944f990; com.apple.Preferences; pid: -1> with error: Error Domain=BKSProcessErrorDomain Code=1 "Unable to bootstrap process with bundleID com.apple.Preferences" UserInfo={NSLocalizedFailureReason=Unable to obtain valid process handle, BKSProcessExitReason=0, BSErrorCodeDescription=bootstrap-failed, BKSProcessJobLabel=UIKitApplication:com.apple.Preferences[0x90bf][6825], NSLocalizedDescription=Unable to bootstrap process with bundleID com.apple.Preferences}
Process handle (com.apple.mobilecal, <BSProcessHandle: 0x7fe845525860; MobileCal:9363; valid: NO>) is invalid. Returning error {
BKSProcessExitReason = 0;
BKSProcessJobLabel = "UIKitApplication:com.apple.mobilecal[0xf53][6825]";
NSLocalizedFailureReason = "Unable to obtain valid process handle";
}
[com.apple.mobilecal] Bootstrap failed with error: <NSError: 0x604000643ae0; domain: BKSProcessErrorDomain; code: 1 (bootstrap-failed); reason: "Unable to obtain valid process handle">
Bootstrapping failed for <FBApplicationProcess: 0x7ffaeb141220; com.apple.mobilecal; pid: -1> with error: Error Domain=BKSProcessErrorDomain Code=1 "Unable to bootstrap process with bundleID com.apple.mobilecal" UserInfo={NSLocalizedFailureReason=Unable to obtain valid process handle, BKSProcessExitReason=0, BSErrorCodeDescription=bootstrap-failed, BKSProcessJobLabel=UIKitApplication:com.apple.mobilecal[0xf53][6825], NSLocalizedDescription=Unable to bootstrap process with bundleID com.apple.mobilecal}
Unable to find framework using path: /System/Library/Frameworks/VideoSubscriberAccount.framework
我已经在 iPhone X、iPhone 8/8+ 和 iPhone 6+ 模拟器上用 iOS 11 / 10.3.1 试过了,都同样的崩溃结果。如果我在较旧的 iOS 模拟器上尝试它,例如 iPhone 6+ iOS 9.2,那么它 运行 没问题。
如果我多次尝试启动它,即 Safari 或日历 40 - 50 次,有时该特定应用可能 运行,一旦成功 运行,它将在会话的其余部分保持不变(直到我在任务切换器上关闭应用程序,然后再次出现同样的问题)。我的 Xcode 编译的应用程序也会发生同样的情况。
我的 iMac 2009 一直是 运行ning El Capitan 和 Xcode 8,我刚刚升级到 High Sierra Xcode 9.
我尝试了 Xcode 9.1 Beta,但同样的问题仍然存在。
请帮忙,谢谢。
感谢@russbishop 关于禁用第 3 方内核扩展的建议,我找到了罪魁祸首 — One Periodic's Hands Off Firewall!
我用这个命令卸载了 kext:
kextunload -b com.metakine.handsoff.driver
iOS 模拟器中的所有库存应用程序立即可以完美启动。请注意,您必须卸载 kext。简单地禁用 Hands Off 中的规则并不能解决问题。
但是,一旦我完成重新激活防火墙,我就不能“kextload”返回 Hands Off 驱动程序。需要重新启动系统。
我也已将此问题报告给 Hands Off,希望在下一个版本中看到修复。
也感谢@JeremyHuddlestonSequoia 帮助诊断。
我已经升级到 Xcode 9,但 10.3 和 11 的 iOS 模拟器不工作。尝试 运行.
时,所有股票和我的应用程序都被强制关闭Xcode 当我尝试 运行 日历、首选项等时显示如下所示的控制台错误。"Unable to obtain valid process handle" 是什么意思?
Process handle (com.apple.Preferences, <BSProcessHandle: 0x7fe84552b8b0; Preferences:9270; valid: NO>) is invalid. Returning error {
BKSProcessExitReason = 0;
BKSProcessJobLabel = "UIKitApplication:com.apple.Preferences[0x90bf][6825]";
NSLocalizedFailureReason = "Unable to obtain valid process handle";
}
[com.apple.Preferences] Bootstrap failed with error: <NSError: 0x600000846c60; domain: BKSProcessErrorDomain; code: 1 (bootstrap-failed); reason: "Unable to obtain valid process handle">
Bootstrapping failed for <FBApplicationProcess: 0x7ffae944f990; com.apple.Preferences; pid: -1> with error: Error Domain=BKSProcessErrorDomain Code=1 "Unable to bootstrap process with bundleID com.apple.Preferences" UserInfo={NSLocalizedFailureReason=Unable to obtain valid process handle, BKSProcessExitReason=0, BSErrorCodeDescription=bootstrap-failed, BKSProcessJobLabel=UIKitApplication:com.apple.Preferences[0x90bf][6825], NSLocalizedDescription=Unable to bootstrap process with bundleID com.apple.Preferences}
Process handle (com.apple.mobilecal, <BSProcessHandle: 0x7fe845525860; MobileCal:9363; valid: NO>) is invalid. Returning error {
BKSProcessExitReason = 0;
BKSProcessJobLabel = "UIKitApplication:com.apple.mobilecal[0xf53][6825]";
NSLocalizedFailureReason = "Unable to obtain valid process handle";
}
[com.apple.mobilecal] Bootstrap failed with error: <NSError: 0x604000643ae0; domain: BKSProcessErrorDomain; code: 1 (bootstrap-failed); reason: "Unable to obtain valid process handle">
Bootstrapping failed for <FBApplicationProcess: 0x7ffaeb141220; com.apple.mobilecal; pid: -1> with error: Error Domain=BKSProcessErrorDomain Code=1 "Unable to bootstrap process with bundleID com.apple.mobilecal" UserInfo={NSLocalizedFailureReason=Unable to obtain valid process handle, BKSProcessExitReason=0, BSErrorCodeDescription=bootstrap-failed, BKSProcessJobLabel=UIKitApplication:com.apple.mobilecal[0xf53][6825], NSLocalizedDescription=Unable to bootstrap process with bundleID com.apple.mobilecal}
Unable to find framework using path: /System/Library/Frameworks/VideoSubscriberAccount.framework
我已经在 iPhone X、iPhone 8/8+ 和 iPhone 6+ 模拟器上用 iOS 11 / 10.3.1 试过了,都同样的崩溃结果。如果我在较旧的 iOS 模拟器上尝试它,例如 iPhone 6+ iOS 9.2,那么它 运行 没问题。
如果我多次尝试启动它,即 Safari 或日历 40 - 50 次,有时该特定应用可能 运行,一旦成功 运行,它将在会话的其余部分保持不变(直到我在任务切换器上关闭应用程序,然后再次出现同样的问题)。我的 Xcode 编译的应用程序也会发生同样的情况。
我的 iMac 2009 一直是 运行ning El Capitan 和 Xcode 8,我刚刚升级到 High Sierra Xcode 9.
我尝试了 Xcode 9.1 Beta,但同样的问题仍然存在。
请帮忙,谢谢。
感谢@russbishop 关于禁用第 3 方内核扩展的建议,我找到了罪魁祸首 — One Periodic's Hands Off Firewall!
我用这个命令卸载了 kext:
kextunload -b com.metakine.handsoff.driver
iOS 模拟器中的所有库存应用程序立即可以完美启动。请注意,您必须卸载 kext。简单地禁用 Hands Off 中的规则并不能解决问题。
但是,一旦我完成重新激活防火墙,我就不能“kextload”返回 Hands Off 驱动程序。需要重新启动系统。
我也已将此问题报告给 Hands Off,希望在下一个版本中看到修复。
也感谢@JeremyHuddlestonSequoia 帮助诊断。