0

我正在尝试启动并运行 Google GCM 演示应用程序。我的 android 模拟器成功连接到 GCM 服务器并继续成功连接到我自己的服务器,该服务器位于http://localhost:8080/gcm-demo-server(即模拟器将请求发送到http://10.0.2.2:8080/gcm-demo-server)。

但是,当我在服务器网页上单击“发送消息”时,消息不会传递到模拟器。Logcat 中没有显示任何内容,并且我在 GCMIntentService 类中的 onMessage() 中的断点没有被命中。

我不明白它如何成功地向服务器注册,传递它的registrationId,但是当该registrationId用于将消息发送回模拟器时,它没有被接收到。我没有更改演示应用程序代码。

任何人都知道我可以从哪里开始寻找问题,因为我什至不知道从哪里开始。

4

2 回答 2

1

首先,我完全不知道您遵循了哪些教程/步骤来使 GCM 演示运行。我的建议是逐步将您的工作与此链接进行比较,您将回家:-)

http://androidv5.wordpress.com/2012/08/15/how-to-implement-google-cloud-messaging/

此外,您应该声明,当您的设备/模拟器连接到服务器时,服务器页面是否显示类似

已注册 1 台设备

如果是这样,那么您的服务器已经到达,那么在这种情况下,您需要验证您是否向服务器提供了正确的信息以到达目的地设备/模拟器

这可能需要时间不要失去耐心;-)

更新 :

在 gcm demo app 中打开文件 CommonUtilities.java

替换 静态最终字符串 SENDER_ID = “your_sender_id_from_api_console_url”的值; 使用您从该链接获得的设备的发件人 ID

https://code.google.com/apis/console/#project:4815162342

4815162342 在这种情况下

如需进一步帮助:在我提到的链接中向下滚动到客户端实施

于 2013-01-17T12:58:29.497 回答
0

原来这是我使用的网络连接的问题。

于 2013-01-21T15:41:37.223 回答