可以在回调didRegisterForRemoteNotificationsWithDeviceToken中使用deviceToken来唯一标识设备

时间:2015-09-25 14:44:49

标签: ios apple-push-notifications appdelegate devicetoken

当设备注册远程推送通知时,将回调以下方法。

(void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken

我的问题是

  1. 可以使用此(deviceToken)来唯一标识设备。如果是,那么生命周期是什么(我的意思是它真的是uniq)呢?
  2. 在什么情况下提供的deviceToken可以更改?
  3. 如果这是设备的生命周期(对于特定的应用程序供应商),那么可以使用它作为替代Unique Identification of iOS device吗?
  4. 修改 我打算在问题标题中写device,但写了user

1 个答案:

答案 0 :(得分:2)

对于您的第一个问题 - 推送设备令牌未链接到用户。如果同一用户登录到另一个设备,他将获得不同的令牌,如果另一个用户登录到同一设备,他还应该与用户1共享该令牌。

并回答第二和第二第三个问题,这是Apple文档中的示例文本:

  

此阶段信令的形式确保仅生成APN   它后来会尊重的标记,它可以保证一个   设备传递给它的令牌与之前的令牌相同   为该特定设备配置 - 仅适用于该设备。

     

如果用户将备份数据还原到新设备或重新安装   操作系统,设备令牌发生变化。

因此,问题的关键是设备推送令牌永远不会被用作唯一标识符或UUID的替代。

编辑:根据上述Apple文档,每次OP编辑,由于推送设备令牌可以更改,因此不应将其视为设备的唯一标识符。