0

我正在开发一个具有推送通知功能的 iOS 应用程序。它是一个体育应用程序,用户可以在其中将球员添加到他们的收藏夹列表中。每个玩家有 3 种事件。

像,

  1. 球进了
  2. 从裁判那里得到了一辆红色的车
  3. 从裁判那里得到了一辆黄色的车

现在在这种情况下,

  • 用户 X 为所有 3 种类型配置了播放器 A

    用户 Y 已将播放器 A 配置为前 2 种类型

    用户 Z 已将播放器 B 配置为最后 2 种类型

现在服务器收到玩家 A 得分的更新(第一种类型)。

有效载荷究竟应该是什么?

我试过以下

{"aps": {"badge": "+1", "alert": "玩家 A 进球 10K", "participantID":["A"],"tags":["score a Goal"]} , "别名": ["sportEvent2013"]}

目前我正在广播更新,即每台配置了 APNS 的设备都会收到推送,并且只显示与标签和参与者 ID 匹配的设备。

它确实有效,但我认为这并不合适,因为每台设备都会收到成千上万的更新(我没有使用设备令牌),因为我无法分辨谁配置了哪些事件?

请帮助我正确的方法。

谢谢

4

2 回答 2

0

您可以对其进行设置,以便当用户将播放器配置为接收特定类型的通知时,应用程序会更新您的数据库。然后,当服务器收到玩家的更新时,查询您的数据库以查找设置了该标志的人,并仅向他们发送通知。

于 2013-03-20T19:13:21.183 回答
0

如果您提供有关您的设置(所有客户端、服务器组件等)的更多详细信息,我可以提供更多详细信息。然而,一般的想法应该是使用城市飞艇的“标签”功能(你也可以使用别名..但这不是那么灵活):

UAirship标签

一般概念是将用户及其设备令牌“订阅”到诸如“PlayerAGoalScored”之类的标签。然后,当更新通过时,您可以告诉城市飞艇向订阅标签“PlayerAGoalscored”的每个人发送推送

于 2013-03-20T19:35:18.887 回答