如何为拥有多个设备的用户管理 APN 令牌?
Posted
技术标签:
【中文标题】如何为拥有多个设备的用户管理 APN 令牌?【英文标题】:How to manage APN tokens for users with multiple devices? 【发布时间】:2020-08-29 01:35:35 【问题描述】:我有一个关于在用户拥有多个设备时管理 APN 令牌的一般性问题。据我了解,APN 令牌会在重新安装应用程序、从备份中恢复设备以及重新安装手机操作系统时发生变化。 (免责声明我是移动开发新手)
在此示例情况下,用户同时使用 iPhone 和 iPad,并希望从两者上的应用接收推送通知。该应用程序要求用户创建一个帐户。与其帐户关联的设备令牌将存储在数据库中。我有一个关于以下情况的问题:如果用户在他们的 iPhone 上重新安装应用程序并且新的 APN 令牌被添加到数据库中。
如果我限制为用户存储的令牌数量,我如何知道要替换哪个令牌?我不确定是否可以检测到令牌来自的设备。如果我只是替换任何一个令牌,我就有可能覆盖 iPad 的令牌。 是否建议限制为用户存储的令牌数量?如果有大量用户并且每个用户有很多设备,我觉得它有可能占用大量空间 对于这种情况,推荐的令牌管理方法是什么?询问以防我的方法不是一个好主意提前谢谢你!
【问题讨论】:
【参考方案1】:当您调用Apple推送服务器API时,它可能会响应状态码410
,表示设备不可访问(卸载?)。您可以安全地删除 410
响应的令牌。
410 The device token is no longer active for the topic.
参考:https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/handling_notification_responses_from_apns
【讨论】:
以上是关于如何为拥有多个设备的用户管理 APN 令牌?的主要内容,如果未能解决你的问题,请参考以下文章
关于如何将 APN 的设备令牌链接到注册用户的建议(通过 phonegap 或 UIWebView)