Apple 推送通知、注销应用和删除应用问题/解决方案
Posted
技术标签:
【中文标题】Apple 推送通知、注销应用和删除应用问题/解决方案【英文标题】:Apple Push notification, logging out app and deleting app problems/solutions 【发布时间】:2012-10-12 01:41:28 【问题描述】:推送通知对我来说非常有用,但在一种情况下除外。我们正在开发的应用程序需要您登录/注销,因此当您登录时,服务器会向您发送通知,而当您未登录时,它不应该。
如果用户在登录时删除应用程序,服务器不知道用户已删除应用程序。如果应用程序一直被删除并且服务器尝试发送通知,这不是问题 - 服务器端的 APNS 反馈机制会捕捉到这一点并关闭会话。
如果用户重新安装应用程序会怎样?从服务器的角度来看,他们仍处于登录状态。在应用程序启动时,您可以向服务器发送一条注销消息。如果您不启动应用程序怎么办?该应用仍会看到收到的通知!
这是一个我不应该担心的愚蠢的边缘情况吗?或者有没有公认的方法来解决这个问题。
【问题讨论】:
【参考方案1】:我想说解决此问题的最佳方法是设置一定的时间(可能是一周或 2 周),如果用户不使用该应用程序或服务器没有从用户那里收到任何数据,它将它们注销。
这样它会自动将他们注销,如果他们两周没有使用该应用程序,他们将不得不在再次使用该应用程序时登录
【讨论】:
【参考方案2】:您可以做一件事,当设备向服务器发送通知注册请求时,服务器可以检查设备的UDID,如果发现任何通知,服务器可以将其清除。
【讨论】:
您无法再在设备中查看 udid 以将其发送到服务器 这或多或少是我们目前正在做的事情。还有一种方法可以从设备上获取 udid。 @nflacco 如何在 ios9 中获取 UDID以上是关于Apple 推送通知、注销应用和删除应用问题/解决方案的主要内容,如果未能解决你的问题,请参考以下文章