在按照移动后端启动程序的教程留言板教程后,无法将消息发送到另一个Android手机实例

时间:2014-05-10 04:52:14

标签: android google-cloud-messaging google-cloud-datastore

我是移动后端启动器的新手。我按照移动后端启动页面上的教程进行操作。在完成包括认证部分在内的整个教程之后,我在2个不同的Android手机上部署了相同的代码实例。当我从一个Android手机实例发送消息时,我没有在Android手机的另一个实例上显示,直到我重新启动另一个实例上的应用程序。我也将setcope值设置为scope.Future_AND_Past而不是Scope.PAST。 我想知道应该做些什么来确保聊天服务有效。消息被推送到服务器但应用程序无法进行连续查询。 请帮忙,我真的被困了!!

1 个答案:

答案 0 :(得分:0)

问题是由于PUSH消息传递未正确配置。关于已经尝试过的问题在这个问题上没有太多的细节,所以作为一个答案,我只能提出解决这个问题的常见“陷阱”。确实这样做很开心......

1)您是否在Google Developer Console中启用了Google Cloud Messaging(GCM)?在API& Auth Tab下,GCM的API需要切换为绿色。

2)您是否设置了Consts.java以包含PROJECT_ID,通常采用“word-word-etc”形式,PROJECT_NUMBER为数字。您还需要将WEB_CLIENT_ID设置为格式为nnnnn-kkkkkkk.ks.googles.content.com,其中nnnnn是您的PROJECT_NUMBER,而kkkkk是一些密钥。如果您还没有WEB_CLIENT_ID,那么您必须在Google Dev Console中的API和Auth / Credentials中创建一个。单击Create Client ID并输入“Web Application”类型。您应该在控制台中获得一个看起来像这样的密钥:

  

客户端ID nnnnnnnn-kkkkkkkk.apps.googleusercontent.com

     

电子邮件地址nnnnnnnn-kkkkkkkkkkkkk @@@@@@@@@@@      

客户机密钥ljflksjdflksjdflksjdf

     

重定向URI https://PROJECT_ID.appspot.com/oauth2callback

     

Javascript Origins https://PROJECT_ID.appspot.com

其中PROJECT_ID是您的项目ID,即word-word-etc

3)您是否在应用程序的控制面板中为服务器端启用了Push消息?您可以通过访问以下链接的后端配置页面来执行此操作(访问此页面也将验证您是否已成功部署服务器端)

https://PROJECT_ID.appspot.com/admin/configure.jsp

在该配置页面上,您需要

3a)选中“启用谷歌云消息”单选按钮

3b)将google云消息传递密钥字段设置为SERVER API密钥..您可以在API&amp ;;的Google Dev Console中生成此密钥。 Auth / Credentials选项卡...您需要密钥为“服务器”类型,我认为最好允许任何IP。

最后在该配置页面上有一个“广播消息”部分,它将向您的设备发送PUSH GCM - 尝试输入消息并点击广播,然后在设备上观看LogCat,您应该看到一些Log.I类消息出现。祝你好运。