2013-03-19 14 views
0

我正在使用插件的registerDeviceunregisterDevice方法,并在pushwoosh中查看我的应用的控制面板。我的应用程序的首选项默认为接受推送通知,因此我注册了该功能,并且在pushwoosh控制面板中我的订阅人数增加了。如指南所示,它也触发push-notification事件,其中事件具有notification属性,但它设置为null。这令人困惑,因为我还没有从控制面板发送任何推送通知。在pushwoosh推送通知中发生错误的事件和回调

然后我将推送首选项设置为false并取消注册设备。它的工作原理是因为我的用户数在控制面板中递减,但回调是触发的回调,并且它获得的唯一参数是与回调获得的寄存器success相同的推送令牌字符串。如果之后我再次注销,仍然只有fail回调触发,但这次唯一的参数是空字符串。

我是否在处理来自插件的响应时出错?

的代码我与测试:

(function() { 
    $document.on('push-notification', function(evt) { 
     var n = evt.originalEvent.notification; 
     console.log(n); 
    }); 

    var pushPrefApply = function() { 
     app.pushPref(function(pushPref) { 
      console.log('pushPref', pushPref); 
      if (!pushPref) { 
       window.plugins.pushNotification.unregisterDevice(
        function() { 
         console.log('unreg ok', arguments); 
        }, 
        function() { 
         console.log('unreg fail', arguments); 
        } 
       ); 
       return; 
      } 
      window.plugins.pushNotification.registerDevice(
       { 
        projectid: '123456789012', 
        appid : 'F0000-BAAAA' 
       }, 
       function(pushToken) { 
        console.log('reg ok', arguments); 
       }, 
       function(status) { 
        console.log('reg fail', arguments); 
       } 
      ); 
     }); 
    }; 

    //code for changing/initiating push preference goes here 
})(); 

$document是不是一个错字,它已经定义。 app.pushPref是偏好设置/获取功能。 window.plugins.pushNotification.onDeviceReady已在其他地方完成deviceready

我希望pushwoosh开发者会对此有所了解。

回答

相关问题