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



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

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

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

我没主意了。提前感谢您的任何有用建议。

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

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

但所需的格式是

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

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

使用 Parse 控制台,我尝试创建具有类似格式的 JSON 对象,但它不起作用。还没有尝试过亚马逊SNS。

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

[Parse

developer] Parse 不为 PhoneGap 提供第一方支持;他们的产品只适用于 JS SDK,而 JS SDK 没有原生的 Push 支持。我在上一个问题中描述了让 Parse 识别您的设备以任意语言推送的必要条件。但是,您可能正在接收推送,但未创建通知。

在Android中(与iOS,WinRT或WinPhone不同),推送并不一定意味着"通知"。来自 Parse 的原生 android SDK 会自动为您创建此功能。您需要创建自己的 BroadcastReceiver 并连接它以处理 Play 商店应用发送推送的意图。您可以在我们的 Android 推送教程中找到这些内容。在 BroadcastReceiver 中,您需要在接收推送时创建并注册自己的通知对象。

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

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

最新更新