0

我有一个带有 Rails 后端(和前端)的 iOS 应用程序。我正在使用 Parse 进行推送通知。

我正在尝试找出仅发送将收到的推送通知的最佳方法;也就是说,我想避免将它们发送到:

  • 仅使用 Web 应用且没有 iOS 应用的用户
  • 拥有 iOS 应用但随后将其卸载的用户

Parse Push API 的工作方式是我可以在某个频道上广播通知,并且任何正在收听该频道的设备都会收到通知。因此,我计划为每个用户制作单独的频道。

显然,我需要在服务器端存储一些关于谁在运行 iOS 应用程序的信息。我很好奇那里是否有人有解决此类问题的经验并且可以提供任何智慧。谢谢!

4

1 回答 1

1

Parse 已经存储了有关谁在运行 iOS 和 Android 应用程序的信息。查看数据浏览器,有一个带有 deviceType 字段的安装表。

让 iOS 应用注册一个唯一的(每个用户)频道。如果您只在用户频道上发送推送通知,它只会发送给安装了 iOS 应用程序的用户。

对于拥有 iOS 应用但卸载它的用户,您无能为力。Apple 没有为应用程序提供在卸载之前运行任何代码的方法,因此您无法使用 Parse 取消注册设备。我不确定 Parse 是否这样做,但 Urban Airship 会轮询 APNS 服务器并删除在一定天数后卸载应用程序的设备。

于 2012-07-16T03:02:56.333 回答