当前位置 : 主页 > 手机开发 > cordova >

Cordova Pushplugin:没有叫ecb

来源:互联网 收集:自由互联 发布时间:2021-06-10
我正在尝试检索设备注册ID,以便从我的后端向它发送通知. 我已经尝试了几次: 在我的对象之外 GambifyApp.NotificationManager = window.GambifyApp.NotificationManager = Ember.Object.extend({ init: function(){
我正在尝试检索设备注册ID,以便从我的后端向它发送通知.

我已经尝试了几次:

>在我的对象之外

GambifyApp.NotificationManager = window.GambifyApp.NotificationManager = Ember.Object.extend({
        init: function(){
            var pushNotification = window.plugins.pushNotification;
            window.GambifyApp.NotificationHandler = GambifyApp.NotificationHandler;
            if ( device.platform == 'android' || device.platform == 'Android' )
            {
                console.log('pushNotification Register');
                pushNotification.register(
                    this.successHandler,
                    this.errorHandler, {
                        "senderID":GambifyApp.config.android_sender_id,
                        "ecb":"window.externalOnNotificationGCM"
                    });
        },
    });

 window.externalOnNotificationGCM = function (e) {
            console.log('reg id:' + e.regid);
    };

>方法是在另一个对象内部(除欧洲央行外,一切都保持不变:

"ecb":"window.GambifyApp.NotificationHandler.onHandler"

这是我放置处理程序的地方:

GambifyApp.NotificationHandler =  window.GambifyApp.NotificationHandler = {
    onHandler: function(e){
        console.log('onHandler:');
        if(e.event == "registered") {
            console.log('reg id:' + e.regid);
        }
        console.log(e);
    }
}

>我的最后一个方法

"ecb":"GambifyApp.NotificationManager.onNotificationGCM"

这里增加了经理类:

GambifyApp.NotificationManager = window.GambifyApp.NotificationManager = Ember.Object.extend({
    /* ...... */

    onNotificationGCM: function(e){
        console.log('MESSAGE received:');
        console.log(e);
    }
});

我也试过没有窗口对象等.我的sucess处理程序总是被触发但从来没有ECB.

通过将ecb指定为window.GambifyApp.NotificationHandler.onNotificationGCM来解决该问题:

pushNotification.register(
    this.successHandler,
    this.errorHandler, {
        "senderID":GambifyApp.config.android_sender_id,
        "ecb":"window.GambifyApp.NotificationHandler.onNotificationGCM"
    }
);
网友评论