Google Cloud Messaging无法使用Phonegap

时间:2015-02-19 17:24:18

标签: android cordova google-cloud-messaging

我在使用基于Phonegap的应用程序中使用Google Cloud Messaging时遇到了很多麻烦。

我按照here的说明操作。 它使用PushPlugin,我根据说明在我的应用程序中安装了它。

我注册后没有得到任何响应,当我这样做时没有任何反应(没有出现console.log):

window.plugins.pushNotification.register(
            pushSuccessHandler,
            pushErrorHandler, {
                "senderID":"12345678", 
                "ecb":"onNotificationGCM"
            }
        );

var pushSuccessHandler = function(result) {
    console.log(result);
};

var pushErrorHandler = function(error) {
    console.log(error);
};

var onNotificationGCM = function(e) {
    console.log(e);
    switch(e.event) {
        case 'registered' : {
            console.log('android reg id: ' + e.regid);
            break;
        }
    }
};

我在Google Developer Console中设置了一个API项目,得到了一个我用作SenderID的项目编号,并对Phonegap清单和配置xml文件进行了所有修改。 我的应用尚未在Play商店发布。

这是否有必要让云消息传递工作?

以上代码是否足以获得“注册”,或者我是否首先需要从服务器推送一些内容,但使用的是什么' reg id'然后??

某处我读到推送通知仅在Phonegap应用程序运行时或单击通知时起作用,因此不是从正常图标启动应用程序时。但是,我不明白这一点,因为当应用未运行时,通知是否有效?

2 个答案:

答案 0 :(得分:0)

推送通知无需发布即可使用,不需要发布。 只有您必须从开发人员控制台获取发件人ID。  发件人ID - 在开发者控制台中的项目编号

有关详细信息,请查看此处

https://github.com/phonegap-build/PushPlugin

我正在使用它对于Android和iOS来说都很好用

答案 1 :(得分:0)

<强> 更新

我使用Intellij IDEA构建应用程序。当我使用phonegap build android进行编译时,推送通知 正常工作。

我必须添加&#39; android-support-v13.jar&#39;和&#39; gcm.jar&#39;将文件作为IDEA项目的“项目设置”中的库,以使其正常工作。需要将这些库添加到主模块的依赖关系中,并使用范围&#39;编译&#39;。

在我只在模块的依赖项中直接添加它们之前,使用Scope&#39;提供了&#39;但显然这不起作用(虽然它已编译)。