我即将启动社交网络应用,所以我需要你的帮助。基本上,这个应用程序只是在用户发布内容时向朋友发送通知。我阅读了有关GCM的内容,并将其集成到我的其他应用中。
示例方案:
但是,如果用户X在用户Y使用的同一设备中注册怎么办?如果用户X使用其他设备登录并且因为它没有相同的注册ID而未收到通知,该怎么办?
我需要你的想法。我很乐意感谢你的帮助。感谢。
答案 0 :(得分:0)
这个问题可以通过许多不同的方式解决。我解决它的方法如下。
我的数据库中有一个devices
表,其中platform
,user_id
和token
为其列。
如您所想,user_id
是设备所属的人,platform
可帮助我区分它是什么类型的ID。它们是在Android,iPhone,网络上吗?然后令牌是给定的注册ID。
您需要构建的核心内容是确保一次只能有1个人登录任何设备,因此您需要确保令牌在数据库中都是唯一的。当用户登录时,根据传入的信息为他们存储设备。当他们注销或会话过期时,请务必删除重要信息。
关于会话到期,如果用户可以使用许多设备登录,则他们可能有许多身份验证令牌,因此您的数据库中可能有一个authentication_tokens
表。然后,您的auth_token_id
表中还应该有一个devices
列,用于将设备链接到会话,以便了解要过期的设备。
同样,没有一种方法可以做到这一点,我也有这个问题很长一段时间。
这样做的核心是在您的后端构建强大的身份验证/授权解决方案。