我们正在为 Android 和 iOS 开发应用程序。我们正在使用 AWS SNS 移动推送将消息推送到 GCM 和 APNS。后端是 PHP,因此它使用 AWS PHP SDK。
到目前为止,我们的系统已经为每位用户节省了 1 个 Endpoint ARN。然后,我们将移动推送消息直接广播到此端点 ARN。
问题:
如果用户在多个设备上登录我们的应用程序并且没有在所有设备上收到推送通知,那就太奇怪了。所以 - 我们将不得不改变一些事情。
在 AWS Mobile Push 中,如何处理“一个用户、多个设备(可能还有多个平台)”的概念?
我们的系统是否必须维护用户到 EndpointARN 的一对多关联(即开始为每个用户保存多个 EndpointARN,以便我们可以按顺序将消息推送给所有这些)?
或者我应该研究移动推送提供的“主题”概念(我在这里很困惑 - 有些人是否每个用户使用一个主题,然后将消息推送到主题本身?)..
最后 - 我想这是一个额外的问题 - 使用 PHP AWS SDK 的人在有效负载数组中包含APNS 和 GCM属性是否正常?Message我们一直没有跟踪“每个用户使用哪种类型的设备”。我们刚刚为每个用户保存了一个 Endpoint ARN。我猜想当我们将消息推送到端点时,我们的想法是只覆盖我们所有的平台基础(APNS、APNS_SANDBOX、GCM)。
我一直在对“一个用户拥有多个设备”主题进行大量搜索:使用 AWS SNS 进行移动推送,实际上结果非常无益。
请帮忙 :(
谢谢!