APN复制令牌

时间:2012-07-17 09:15:29

标签: ios apple-push-notifications devicetoken

我们有一个推送通知服务器,它可以保存几个不同应用程序的数据(设备令牌)。由于Apple希望阻止使用UDID作为标识符的人,我正在考虑更改此服务器,以便它不再依赖UDID来识别设备。

据我所知,APN返回的令牌并非全局唯一,而是每个设备都是唯一的。但是,在浏览我们的数据库时,我注意到有几种情况(在750k +注册上有几百个),其中相同的令牌用于不同的设备

所以我试图找出造成这种情况的原因。在这一点上,我看到了两种可能性:

  1. 我们的服务器注册处理中存在一个模糊的错误
  2. Apple会回收这些设备令牌(可能是在设备重置后?)。我们总是存储某个设备最后一次注册的时间,并且我注意到在使用相同令牌注册不同设备之间总是至少有几天。据我所知,没有任何设备同时使用的令牌。
  3. 如果有人能对此有所了解,我将非常感激。

1 个答案:

答案 0 :(得分:3)

我们所知道的是Apple tells us使用设备令牌将通知推送到设备。所以,只要你是:

  1. 每次启动应用程序并在数据库中注册时,都会向APN查询新的设备令牌

  2. 查询非活动设备的反馈服务并从数据库中清除它们

  3. ......你正在做Apple希望你做的事情。

    但是,我怀疑您的注册码中可能存在错误,因为100 / 750k是一个相当高的冲突率。考虑到这些设备令牌用于推送通知,很多人会抱怨接收不属于他们的通知......