如何跨多个 iOS 设备同步推送通知?

Man*_*uel 2 push-notification apple-push-notifications ios

如何跨多个 iOS 设备同步推送通知?

场景是:用户在两台设备上安装了一个应用程序。两个设备都会收到远程通知。用户在一台设备上打开应用程序。另一台设备上的推送通知应该会消失。

这是由许多应用程序完成的,例如 Facebook Messenger,但这是如何实现的?

(迅速)

Jor*_*ide 5

这是我完全实施的一种方式:

  • 收到推送通知后(它必须是具有“内容可用”标志的类型,以便将其发送给您的应用程序,即使用户没有点击它),应用程序应该拨打电话到您的服务器,通知服务器它已收到。请注意,拥有该标志意味着您的应用程序可能会收到两次推送通知:一次是在系统接收到它时,第二次是在用户点击它时。或者它可能根本没有进来,但那是另一个讨论。
  • 响应此调用,服务器应向为此帐户注册的其他设备发送静默推送通知(带有可选的自定义负载)
  • 收到此推送通知后,其他客户端将应用程序横幅计数设置为零(这将从通知中心清除推送通知。这没有正式记录,因此它可能会在未来的 iOS 版本中停止工作)。