1

在 iOS 上,我们可以使用UIApplication 上的registerForRemoteNotifications方法注册推送通知。

我想创建一个 watchOS 2 应用程序,即使我的手表没有连接到我的手机(但连接到 Wi-Fi)也能正常工作。我想将推送通知从服务器直接发送到手表。有没有办法做到这一点?

如果是这样,这些方法在 watchOS 2 扩展中的等价物是什么?

  application.registerForRemoteNotifications
  application(:, didRegisterForRemoteNotificationsWithDeviceToken:)
  application(:, didFailToRegisterForRemoteNotificationsWithError:)
  application(:, didReceiveRemoteNotification:)

如果没有,我的其他选择是什么?

4

1 回答 1

2

目前没有办法直接从手表服务器获取通知。如Notification Essentials for watch中所述

Apple Watch 仅在包含的 iOS 支持时才会显示本地和远程通知。有关如何在您的 iOS 应用程序中支持本地和远程通知的信息,请参阅本地和远程通知编程指南。

这也提到了

当您的应用程序的本地或远程通知之一到达用户的 iPhone 时,iOS 会决定是在 iPhone 上还是在 Apple Watch 上显示该通知

现在有一些场景,如果您的手机处于活动状态并notification到达,它将在手机上收到。但是如果手机被锁定并且手表处于活动状态然后notification到达它将显示在watch

Apple Push Notification Service Doc中也提到了

Apple 推送通知服务 (APN) 是远程通知功能的核心。它是一种强大且高效的服务,用于将信息传播到 iOS(以及间接地,watchOS)、tvOS 和 OS X 设备。

于 2016-01-01T05:14:03.780 回答