PHP Apple推送通知反馈服务

时间:2012-04-09 01:37:49

标签: php ios push-notification apple-push-notifications

我想知道当你从苹果的推送反馈服务中获得一个令牌列表时,这些是否仅适用于拨打电话的应用程序(使用该应用程序的pem证书),或者苹果会将所有令牌发回给所有人您的应用在同一帐户下有应用ID吗?

我问的原因是,我有一个检查反馈服务的脚本,因此它可以在发送推送之前删除令牌。我复制了脚本并将其设置在我的新应用程序的新子目录中,并更改了所有相应的数据库信息并为这个新应用程序创建了新的pem文件。

由于这是一个新的应用程序,数据库中只有一个令牌,我还没有发送任何推送,但是当我运行脚本时,反馈服务报告了需要删除的1200个令牌。由于我没想到这一点,我只是检查从这个应用程序的数据库中删除这些令牌,而不是从其他应用程序中删除。

我很困惑,因为Apple Developer页面说“为此目的,Apple推送通知服务包含一个反馈服务,APN不断更新每个应用程序列表的设备发生故障尝试“这使我相信我应该只在每个应用程序的基础上获得令牌而不是所有应用程序。

任何人都可以确认或否认反馈服务如何与多个应用程序一起使用,那么我可以找出问题所在(如果我有问题)?

由于

2 个答案:

答案 0 :(得分:2)

我找到了一些相关信息:

  

APNS反馈服务器仅返回自上次反馈请求后已“过期”的设备令牌。

source

这意味着如果你发送到你的几个应用程序,然后在推送到苹果的X数量之后,请拨打反馈(),然后反馈()将从你的所有应用程序中获得非活动令牌。

我目前的解决方案是在每次推送到苹果后调用反馈。 现在已经足够了

答案 1 :(得分:2)

在向Apple发送电子邮件并等待大约2周后,我终于得到了以下回复:

连接到反馈服务使用与用于连接到APN网关的相同TLS / SSL标识(证书和私钥)。 APN根据证书的UserID属性识别您希望与之通信的应用程序。

因此,正如您必须为每个应用程序建立单独的APN连接以发送通知一样,您必须对反馈服务执行相同的操作。

所以你给了反馈服务的每个应用程序单独的连接。