我有一个已成功集成苹果推送通知的应用程序,当用户登录到应用程序时,应用程序会注册推送通知,并且令牌会保存在我们的后端,当用户从应用程序注销时,我们会从我们的应用程序中删除推送通知令牌后端。但是如果用户在没有从应用程序注销的情况下从设备上卸载应用程序,然后重新安装,在这种情况下我们仍然可以向设备发送推送通知,因为应用程序是新安装的并且没有登录任何用户,我们必须删除令牌从后端。由于 iOS 应用程序没有任何用于卸载事件的 API,我如何从后端删除设备令牌。我可以使用推送通知反馈服务来获取已卸载的设备令牌,但是当用户删除应用程序然后重新安装时如何解决问题。
我用skype测试了这个场景,也有这个问题。 (安装 Skype > 登录 >(现在您可以将应用程序发送到后台并从任何其他设备发送一些聊天,您将收到推送通知)> 然后从设备中删除应用程序,无需从 Skype 注销 > 重新安装 Skype > 现在如果我们发送 Skype 聊天 我们收到推送通知,但 Skype 应用程序是新安装的,没有人登录)
我想您能做的最好的事情就是在没有登录用户的情况下启动应用程序时预防性地取消注册/删除令牌。无论如何,您应该在每次启动应用程序时更新注册,因此在每次应用程序启动时注册/注销,具体取决于用户是否登录。这样,如果用户重新安装应用程序并第一次启动它,它将被取消注册。
这是您可以实现的最佳行为,因为 Twitter、Facebook、Skype 等也是如此......
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)