Xcode 8,无法配对手表模拟器

Posted

技术标签:

【中文标题】Xcode 8,无法配对手表模拟器【英文标题】:Xcode 8, cannot pair watch simulator 【发布时间】:2016-12-17 23:48:19 【问题描述】:

我正在运行 Xcode 8 beta 5。我的应用有一个手表扩展。我无法将 iPhone 模拟器与手表模拟器配对。我已按照配对说明进行操作(Xcode、Window、Devices),但那里没有列出任何手表模拟器,当我选择任何 iPhone 模拟器时也没有列出任何手表模拟器。我已经尝试过添加模拟器的变体,但我只得到了更多的 iPhone 模拟器——我从来没有看到过手表模拟器或配对。手表模拟器存在——我可以启动模拟器,但它没有配对。我试过删除 Xcode 并重新安装。与 beta 4 相同的问题。

当我在 Device 中选择 iPhone 模拟器时,如何让手表模拟器出现?

更新:明确地说,这些是 Apple 关于“将 Apple Watch 模拟器与 iPhone 模拟器配对”的说明 (https://developer.apple.com/library/ios/recipes/xcode_help-devices_organizer/PairingWatchestoiPhoneSimulators/PairingWatchestoiPhoneSimulators.html)

    在“模拟器”下的“设备”窗口中,选择 iPhone 5 及更高版本的模拟器。

    在配对手表表下,单击添加按钮 (+)。

我从来没有看到“配对手表表”,所以没有添加按钮。

我确实在 Xcode 7 中看到了这一点,如下所示: 更新 2: 在 Xcode 8 beta 6 中,配对手表表出现在设备窗口中,但配对仍然失败,并出现“模拟器未配对”对话框。

【问题讨论】:

'xcrun simctl list' 的输出是什么?您看到那里列出了您的配对吗?尝试将您的设备与“xcrun simctl pair ...”配对 有大量输出,但没有配对。如果我运行 Xcode 8 模拟程序,xcrun 命令会崩溃。如何让它使用 Xcode 8 版本,以及如何指定要配对的模拟人生? 你能把崩溃日志(pastebin 等)发给我吗? -- 您可以使用“pair”子命令创建一对。例如:'xcrun simctl pair ' Jeremy:我能够成功配对手表,但我必须创建一个具有唯一名称的新手表模拟器,在 Xcode 设备中配对,然后在手表的硬件、设备菜单中选择它。手表的硬件、设备列表中有很多“Apple Watch - 42mm”(默认配对),所以我认为它是正确的。除了您在此处的评论外,没有提到必须匹配设备,并在许多同名的长列表中找到确切的设备——它应该更自动。感谢您的帮助。 @Jeff 谢谢,重新创建模拟器是在我的构建中修复它的唯一方法,使用 xcode 8(GM 种子) - 可能是公认的答案吗? 【参考方案1】:

我找到了两种处理多个同名模拟器的方法:

    Xcode 设备窗口:为特定的 iPhone 设备创建一个新的手表模拟器,并给它一个唯一的名称(例如,“test3”)。启动手表模拟器时,在手表的“硬件”、“设备”菜单中选择该模拟器。



    Xcode:在 Xcode 的 Active Scheme 下拉菜单中选择并运行 iPhone 应用程序,然后也在 Active Scheme 中选择并运行 WatchKit 应用程序。这些操作中的每一个都将启动正确配对的模拟器,即使名称不明确。

 

【讨论】:

很好的答案..使用此解决方案后,我终于能够在模拟器中启动我的手表应用程序..

以上是关于Xcode 8,无法配对手表模拟器的主要内容,如果未能解决你的问题,请参考以下文章

有时无法访问配对手表模拟器上的 WatchConnectivity 会话

Apple TV 与 Xcode 12 配对

XCode 12.5 无法部署到与手表配对的手机 - 设备“(null)”未在您的开发者帐户中注册

在 Xcode 中我看到(没有配对的 Apple Watch)即使手表已配对并且手表的 UDID 已注册

Xcode 6.4“无法下载和安装 iOS 8.3 模拟器”

模拟器无法启动,在将我的 Xcode 更新到 8.2.1 后卡在验证“模拟器”上