如何使用 WatchConnectivity 从 iOS 应用程序获取数据

Posted

技术标签:

【中文标题】如何使用 WatchConnectivity 从 iOS 应用程序获取数据【英文标题】:How to use WatchConnectivity to get data from iOS app 【发布时间】:2016-09-29 03:17:16 【问题描述】:

我对 Apple Watch 应用还很陌生,也许我只是以错误的方式接近它,但在尝试了几个小时后我被困住了,我需要一些指导。

目前我有一个 ios 应用程序,它从 Firebase 获取数据并显示一些上下文。 (我还将上下文存储在 UserDefault 中,不是出于共享数据的原因,而是用户不必每次都检索数据)

现在我想创建一个具有相同功能的 watchOS 2 应用。我知道Firebase 不支持 watchOS 2。我想知道是否可以让手表在手机上的 iOS 应用程序处于非活动状态或终止时从 iOS 应用程序获取数据。这可能吗?

【问题讨论】:

【参考方案1】:

WatchConnectivity 提供了一种向 iOS 应用发送消息并在完成“replyHandler”中接受回复的方法。

public func sendMessage(message: [String : AnyObject], replyHandler: (([String : AnyObject]) -> Void)?, errorHandler: ((NSError) -> Void)?)

但如果 iOS 应用程序未处于活动状态,它将在后台启动应用程序,然后获取数据。

【讨论】:

以上是关于如何使用 WatchConnectivity 从 iOS 应用程序获取数据的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 WatchConnectivity 在我的 iOS 和 Watch 应用程序之间共享信息?

使用WatchConnectivity获取核心数据获取请求

使用 WatchConnectivity 框架的独立手表应用

是否可以在后台使用 WatchConnectivity

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

通过 WatchConnectivity 的 sendMessageData 将自定义对象的 NSArray 作为 NSData 传递