如何在 iWatch 中显示通知?

Posted

技术标签:

【中文标题】如何在 iWatch 中显示通知?【英文标题】:How to show notification in iWatch? 【发布时间】:2017-05-31 11:32:28 【问题描述】:

在我的应用程序中,我想实现一些功能,例如当 iPhone 与 iWatch 有一段距离时,而不是观看应用程序显示带有文本消息的本地通知

【问题讨论】:

我一直想为手表编​​写这样的应用程序,但据我所知这是不可能的。您必须始终让您的应用程序运行并监控手机和手表之间的连接。 【参考方案1】:

如果您在 Watch 与电话断开连接时收到通知就足够了,您可以使用 WatchConnectivity 框架来实现这一点。 当手表与电话断开连接时,可选的func sessionReachabilityDidChange(_:) 会在手表上被调用。 但是,您的 WatchExtension 需要在前台运行或在后台具有高优先级才能使此功能正常工作。

【讨论】:

我想根据 iPhone 与手表的距离显示通知。如果他们忘记了他们的设备,它可以帮助用户 好吧,对于这种情况,当手表与手机断开连接时通知用户就足够了,因为在大多数情况下,如果发生这种情况,用户仍然可以在忘记时拿起他们的手机。要实际测量设备之间的距离,您可以尝试使用 CoreBluetooth 框架在手机和手表之间发送消息并根据信号强度估计距离(如this question),但我不确定您是否可以使用 CB与手表 sessionReachabilityDidChange(_:) 手表与设备断开连接时未调用 如果应用程序正在运行,则应按照该功能的官方文档中的说明调用它。 是的,sessionReachabilityDidChange(_:) 仅在手表应用处于活动状态时调用,但在应用处于后台时不调用

以上是关于如何在 iWatch 中显示通知?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 ios 应用程序获取手表套件扩展集中的通知?

iWatch开发:WatchOS 消息推送教程

yaoyao微信小程序如何绑定iwatch

iWatchk开发:实现iWatch 与 iPhone 之间数据发送与接收

从 healthKit 中提取心率

从 healthKit 中提取心率