Rus*_*kar 5 android google-cloud-messaging
我正在开发一个具有登录功能的应用程序.我每个应用程序只生成一个gcm注册ID.如果其他用户在同一个应用程序中签名,他将开始接收针对前一个用户的通知.如何处理这种情况,以便每个用户都能获得针对他/她的通知?我应该为每个用户生成gcm reg id吗?处理这种情况的标准方法是什么?
您可以尝试以下方法:
GCM令牌是特定于应用程序的,但您在服务器上建立的关联完全取决于您.
而且我不能强调它,GCM生成的令牌是APP SPECIFIC.如果您的用户登录多个设备,您的服务器应该处理该问题,并将其user ID与多个Registration ID令牌相关联.
GCM服务器向Android应用程序发出的ID,允许它接收消息.一旦Android应用程序具有注册ID,它就会将其发送到第三方应用程序服务器,该服务器使用它来识别已注册接收给定Android应用程序的消息的每个设备.换句话说,注册ID与特定设备上运行的特定Android应用程序绑定.
从文档中,您的服务器还应该:
在编写使用GCM的客户端应用程序之前,必须具有符合以下条件的应用程序服务器:
- 能够与您的客户沟通.
- 能够将格式正确的请求发送到GCM连接服务器.
- 能够处理请求并使用指数退避重新发送它们.
- 能够存储API密钥和客户端注册令牌.
- 能够生成消息ID以唯一标识它发送的每条消息.每个发件人ID的邮件ID应该是唯一的.
有关进一步阅读,您还可以阅读有关Device Group Messaging的更多信息.
您也可以在此处下载一些代码示例.
您应该按用户存储regID.
这是因为存在user1注销并且user2登录的测试用例.在这种情况下,如果您已存储特定于regID应用且不与用户绑定,则user2也将获得通知.
因此,您需要根据用户,应用程序以及特定于设备来存储regID.
| 归档时间: |
|
| 查看次数: |
845 次 |
| 最近记录: |