Android GCM通知从PubNub,Parse,Amazon SNS失败

时间:2015-03-17 09:08:39

标签: android parse-platform push-notification google-cloud-messaging pubnub

我一直在尝试向部署在iOS和Android上的Phonegap应用发送推送通知。 iOS工作正常,但当我从PubNub,Parse和Amazon SNS的任何开发控制台发送推送通知时,Android无法正常工作。

如果我使用GCM API,我确实可以发送通知,因此我使用了正确的发件人ID,API密钥和设备令牌。

我在PubNub控制台上看不到任何错误。在Parse仪表板上,我看到已发送推送通知。 Amazon SNS上没有错误。但是,设备上没有推送通知。

我没有想法。提前感谢任何有用的建议。

4 个答案:

答案 0 :(得分:2)

在PubNub的帮助下,找出了问题所在。 PubNub上的示例具有以下格式

{"pn_gcm": {
    "data" : {
        "GCMSays" : "hi" }
    }
}

但所需的格式是

{"pn_gcm": {
        "data" : {
            "message" : "hi" }
        }
 }

在使用PubNub控制台确认后,我在代码中更新了我的JSON对象,它们就像一个魅力。

使用Parse控制台,我尝试创建一个格式相似的JSON对象,但它没有用。 Haven没有尝试亚马逊SNS。

答案 1 :(得分:0)

本教程说明了如何使用PubNub配置Android GCM:http://www.pubnub.com/docs/java/android/tutorial/google-push-notification.html

答案 2 :(得分:0)

[Parse developer] Parse不为PhoneGap提供第一方支持;他们的产品只适用于JS SDK,它没有本机Push支持。我描述了让Parse识别您的设备以便以任意语言in a previous question进行推送的必要条件。但是,您可能正在接收推送但未创建通知。

在Android中(与iOS,WinRT或WinPhone不同),推送并不一定意味着“通知”。来自Parse creates this automatically for you的原生android SDK。您需要创建自己的BroadcastReceiver并连接它以处理Play商店应用程序发送推送的意图。您可以在Android Push Tutorial中找到这些内容。在您的BroadcastReceiver中,您需要在接收推送时创建并注册自己的通知对象。

答案 3 :(得分:0)

对于Firebase云消息传递,我必须使用此结构来接收托盘通知:

"pn_gcm": {
    "notification": {
        "title": push_title,
        "text": push_message
    }
},