WatchOS 5-Swift上iPhone和Apple Watch之间的通信,反之亦然-第1部分

你要学什么?

  1. 使用WKInterfaceTable和管理为Apple Watch制作一个小界面 IBActions-第一部分
  2. 使用sendMessage(_:replyHandler:errorHandler 🙂从Apple Watch向iPhone应用程序请求信息—第2部分
  3. 从iPhone向Apple Watch发送信息sendMessage(_:replyHandler —第3部分
  4. 重构我们的代码, 以便在一处管理WCSession 。 —第4部分
  5. 使用updateApplicationContext(_ 🙂更新应用程序—第5部分

首先,我们需要一些关于可能性和可能性交流场景的理论:

—关于与对方应用进行通信

您可以通过以下任意一种方式启动传输和通信:

🎓Apple 官方文件

–使用updateApplicationContext(_:)方法将最新状态信息传达给对方。 当对方唤醒时,它可以使用此信息来更新其自身的状态。 例如,支持后台应用刷新的iOS应用可以使用其后台执行时间的一部分来更新相应的Watch应用。 此方法将覆盖以前的数据字典,因此当您的应用程序仅需要最新的数据值时,请使用此方法。

–使用sendMessage(_:replyHandler:errorHandler:)sendMessageData(_:replyHandler:errorHandler:)方法将数据传输到可访问的对应对象。 这些方法用于在iOS应用和WatchKit扩展之间进行即时通信。 当前, isReachable属性必须为true才能使这些方法成功。

–使用transferUserInfo(_:)方法在后台传输数据字典。 您发送的字典排队等待传递给对方,并且在当前应用被暂停或终止时,传输继续进行。

–使用transferFile(_:metadata:)方法在后台传输文件。 如果您要发送的不只是值字典,请使用此方法。 例如,使用此方法发送图像或基于文件的文档。

–在iOS中,使用transferCurrentComplicationUserInfo(_:)方法发送与Watch应用程序并发症有关的数据。 使用此方法会影响并发症的时间预算。


—好吧,现在您知道苹果在两个平台之间进行通信提供了不同的可能性,我们可以开始开发一系列有关如何使用其中最重要的一些教程–


建立新专案

我们将创建一个新项目,为“ 带有WatchKit AppiOS App ”选择模板,并继续执行基本步骤来创建它。

苹果手表界面

现在,我们将为由WKInterfaceTableWKInterfaceButton组成的Apple Watch创建一个小界面,一个界面紧挨另一个。 接下来,在Table内部,我们将插入WKInterfaceLabel并将其行数设置为0。

表类和标识符

转到界面生成器上的TableRowController项,并将其放入名,在我的情况下为Row并作为标识符设置相同的名称。 应该与下一张图片具有相同的外观

界面构建器连接

现在,将Interface Builder中连接到InterfaceController中的代码,并且还连接按钮的IBAction

结论

在下一个系列中,我们将继续提供更好的内容,但是必须有一个简单的界面来玩iPhoneApple Watch之间的通信。

再见! 干杯🍻!