【问题标题】:Why I can't receive messages from GCM on android device为什么我无法在 Android 设备上接收来自 GCM 的消息
【发布时间】:2015-04-26 22:27:28
【问题描述】:

我正在创建一个需要发送 gcm 消息的 Android 应用程序。
到目前为止,我设法获得了 device id 并将其发送到我的服务器。 现在,当我尝试将消息从我的服务器推送到我的应用程序时,我收到此消息:{"multicast_id":4987023356709284342,"success":1,"failure":0,"canonical_ids":0, "results":[{"message_id":"0:1430085972465424%73c650e3f9fd7ecd"}]},但设备上没有任何反应(无论应用程序是否正在运行)。

这是我的相关代码:


Manifest.xml----- AndroidManifest.xml
BroadcastReceiver-------- GcmBroadcastReceiver
IntentService---- GcmIntentService
注册---------------------- GcmRegister

这里我使用的是注册类(查找“GCM HERE”标签)
LoginActivity---------------- LoginActivity

这是我的 android 项目结构
结构--------------------- structure

服务器端 [PHP]
GcmPush -------------------- strong> GcmPush.php
这就是我使用 GcmPush.php 的方式
SendMessage-------------- send function

希望有人能帮助我。
指出我做错了什么...... 谢谢!

【问题讨论】:

    标签: php android google-cloud-messaging


    【解决方案1】:

    终于找到了……
    我将日志放入 GcmReceive,它会打印日志 :),然后我转到 IntentServices,在那里我发现消息已经到达,但通知实际上并没有通知消息。
    到目前为止,我还没有发现我的通知有什么问题,但是我认为这行有问题:

     PendingIntent contentIntent = PendingIntent.getActivity(this, 0,  new Intent(this, MainActivity.class), 0);
    

    我很高兴最大的问题解决了。现在我正在搜索我在通知方面做错了什么。

    非常感谢所有试图提供帮助的人...

    【讨论】:

      【解决方案2】:

      请参考 GCM 的教程here。根据我的说法,您缺少具有 APP_SERVER_URL、GOOGLE_PROJECT_ID 的 GCM 配置文件。

      【讨论】:

      • 我有这个东西...在 GcmRegister 中仔细查看。 APP_SERVER_URL 就是这个链接“taxi.tziuka.com/set-device_id”和GOOGLE_PROJECT_ID 一样位于GcmRegister。我从 StaticThings 类收到这个。但是我的问题不是将设备 ID 发送到服务器,而是从服务器接收消息...( APP_SERVER_URL 和 GOOGLE_PROJECT_ID 用于检索设备 ID...我已经这样做了)。谢谢。
      猜你喜欢
      • 2013-04-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-18
      • 2013-09-05
      • 2014-02-25
      相关资源
      最近更新 更多