无法在 pubnub javascript 回调中收到错误

Not able to get error in pubnub javascript callback

我正在关注此博客中的指南 post:http://www.pubnub.com/blog/sending-android-push-notifications-via-gcm-javascript-using-phonegap/

到目前为止,我已经完成了以下操作:

然后将推送插件添加到现有项目:

$ cordova plugin add https://github.com/phonegap-build/PushPlugin.git

然后从插件中复制PushNotification.js到我的js lib文件夹。 我正在用 requirejs 加载这个 js 文件和 pubnub cdn,这似乎工作正常。

我使用 howto 中 2.2 的脚本创建了一个模块。

define(['env-config','datastore/localstore','jquery','push','pubnub'],function (EnvConfig,Store) {

  var pushNotification = window.plugins.pushNotification;   

  function register() {
    pushNotification.register( 
      successHandler, 
      errorHandler, 
      { 'senderID':EnvConfig.push.senderid, 'ecb':'onNotificationGCM'} 
    );
  } 

  function successHandler(result) { 
    console.log('Success: '+ result); 
  }

  function errorHandler(error) { 
    //** The following line throws: 
    //** java.lang.Long cannot be cast to java.lang.String
    console.log('Error:' + error);
  }

  function onNotificationGCM(e) { 
    switch(e.event){ 
      case 'registered': 
        console.log("Device registered with id "+e.regid);
        Store.set("pushid"+e.regid);
        /*if (e.regid.length > 0) { 
          deviceRegistered(e.regid); 
        } */
        break;   
      case 'message': 
        if (e.foreground){ 
          //What needs to be done when app is in the foreground 
          //while receiving a notification 
          console.log('A notification has been received'); 
        } 
        break;   
      case 'error': 
        console.log('Error: ' + e.msg); 
        break;   
      default: console.log('An unknown event was received'); 
      break; 
    } 
  } 

  var module = {
    init: function() {
      register();
    }
  };

  return module;
});

当设备就绪后,我调用这个模块的初始化函数。

此时register() 失败并执行errorHandler 回调。但是 console.log 失败了:java.lang.Long cannot be cast to java.lang.String。所以我不知道下一步该做什么...

非常感谢任何指点。

三星 Galaxy S5
Android4.4.2
Chrome 30.0(在网络视图中)
科尔多瓦 3.6.3-0.2.13

啊,我想我知道是怎么回事了- 您的发件人 ID 必须是字符串!您可能将其用作数字。

顺便说一句,感谢您试用我写的教程:-)