如果我是多个 iOS应用的Apple推送通知“提供商”,我可以为多个应用使用相同的设备令牌吗?我知道我需要为每个应用程序提供唯一的SSL证书。但是我对设备令牌感到困惑。
示例:我有两个应用A和B.我想为这两个应用提供推送通知。假设我从安装应用程序A的用户收集设备令牌T.假设我有两个应用程序的唯一SSL证书。当同一用户安装应用B时,我可以在为应用B提供推送通知时重新使用令牌T吗?
更多信息:重新阅读Apple's docs后仍然不清楚。特别是这一段似乎意味着可以重用设备令牌:
提供商发送给APN以便传送到设备的每个通知都必须附带从该设备上的应用程序获取的设备令牌。 APN使用令牌密钥解密令牌,从而确保通知有效。然后,它使用设备令牌中包含的设备ID来确定通知的目标设备。
注意:听起来像每个应用的提供商SSL证书中包含的“topic”/ bundleID都会将通知定向到设备上的特定应用。因此,设备令牌对于设备而言是独一无二的(而不是设备上的应用程序)似乎是合理的。
答案 0 :(得分:7)
对于两个应用程序A和B,设备令牌对于沙盒ssl证书将是相同的,但它将更改为分发配置文件(即使用生产ssl证书时)
此外,升级操作系统时设备令牌可能会更改
我也开发了一个“提供者”,我更喜欢每个应用程序存储设备令牌。 即(APP_A => Token1; APP_B => Token1) 每次设备向提供者发送注册请求时,检查表中是否存在APP和设备令牌的组合,如果没有进行新插入。
这样,即使设备令牌因某种原因发生变化,您也不必担心。