Apple Watch没有在设备上接收didReceiveUserInfo,但是在模拟器中

时间:2016-01-14 12:59:08

标签: ios swift2 watchkit watch-os-2 watchconnectivity

我是第一次尝试制作Apple Watch应用程序,而且我在设备上测试时遇到了一些问题。

我遵循了一个教程: https://www.natashatherobot.com/watchconnectivity-application-context/

当我在手机中将数据发送到模拟器中的手表时,我会按预期接收数据。我在控制台中打印已收到的数据。

但是当我尝试在自己的手表上运行应用程序时,我没有收到任何回调。我尝试过: didReceiveApplicationContext didReceiveUserInfo

两者都在模拟器中工作,但不在设备上工作。

如果我检查手表是否配对且可以到达,它就会说。我不知道为什么它不能在设备上运行,也不知道如何找到问题或如何进一步调试它。

我也无法在Google上找到任何关于它的内容......

任何?

4 个答案:

答案 0 :(得分:1)

我遇到了同样的问题 - 当我在模拟器中运行手表应用程序时,它可以正常工作并可以使用方法" updateApplicationContext"从iPhone到手表和方法" didReceiveApplicationContext"效果很好。

但是如果你想在真正的苹果手表设备上运行应用程序,你需要先在真正的iPhone设备上运行iPhone应用程序并通过iPhone安装手表应用程序"观看" app,然后方法" didReceiveApplicationContext"会工作

答案 1 :(得分:0)

我刚刚发现; 当您想在设备上测试Watch应用程序并从xcode运行它时,首先必须在iPhone上运行该应用程序。推出后,它会在手表上启动应用程序,然后我会收到数据......

如果我先在手表上打开应用程序,那么在为我调试时它不起作用。

答案 2 :(得分:0)

WatchConnectivity适用于iOS 2.0,因此您确定您的手表已更新至iOS 2.0吗?

答案 3 :(得分:-1)

只需使用didReceiveMessage