android GCM没有';行不通

android GCM没有';行不通,android,google-cloud-messaging,Android,Google Cloud Messaging,我使用goole提供的示例,构建了一个客户端应用程序来获取通知,另一个是服务器端,这两个应用程序(代码)都是google提供的 我在客户端运行应用程序,得到注册id。一些巨大的字符串,格式如下: APA91BEGGUWT98XLBIVRXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXDALNOEKTCSVBOKT0-UFH2FARNFPPKRME2TZUVR0BYCMNEHX_Ix1PV_uu.XXXXXXXXXXXXXX

我使用goole提供的示例,构建了一个客户端应用程序来获取通知,另一个是服务器端,这两个应用程序(代码)都是google提供的

我在客户端运行应用程序,得到注册id。一些巨大的字符串,格式如下:

APA91BEGGUWT98XLBIVRXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXDALNOEKTCSVBOKT0-UFH2FARNFPPKRME2TZUVR0BYCMNEHX_Ix1PV_uu.XXXXXXXXXXXXXXXXXXXXXXXXXX N5HCSEY_wA

这证明了客户端应用程序是有效的。现在是服务器(java、google示例):

这是服务器。当我运行服务器时,我得到如下结果: [messageId=0:1341907115903155%921C249A000000031] 但是没有关于客户的信息,我不明白为什么。我从服务器得到的响应是什么意思?这是成功的回应吗


我需要帮助才能理解问题所在?

请查看他们的评论

注意:如果您的组织有防火墙限制进出Internet的流量,则需要将其配置为允许与GCM连接。要打开的端口为:5228、5229和5230。GCM通常仅使用5228,但有时使用5229和5230。GCM不提供特定IP。它经常改变IP地址

根据:

当第三方服务器向GCM发布消息并接收回消息ID时,并不意味着该消息已发送到设备。相反,这意味着它被接受交付。消息被接受后会发生什么情况取决于许多因素

在最佳情况下,如果设备连接到GCM,屏幕将打开,并且没有节流限制(请参阅节流),消息将立即传递


如果正在使用internet防火墙,请将其删除,然后重试


如果您在GCM中遇到延迟通知或消息问题,请尝试此解决方案


我知道这不是一个合适的解决方案,但它可以运行。安装这个应用程序对我来说真的很有效。所以当我们在网上收到这些消息时device@GauravPandey-这非常依赖于GCM服务,如果你去查看GCM文档,他们会说这些消息将由服务器尽快传递。
public static void main(String[] args) {

        Sender sender = new Sender("AIzaSXXXXXXXXXX_XXXXXXXXXXXXXXXrQOnoGZw");      
        Message message = new Message.Builder()
        .collapseKey("1")
        .timeToLive(3)
        .delayWhileIdle(true)
        .addData("message",
          "this text will be seen in notification bar!!")
        .build();

        try {
            Result result = sender.send(message, "APA91bEgguwt98xLbivrXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXLxDalNoEktCSVbOkT0-uFH2FaRnfpkRME2tzuvr0BycMNEhX_Ix1PV_XXXXXXXXXXXXXXXXXXXXXN5hcseY_wA", 3);
            System.out.println(result.toString());
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
}