gpt4 book ai didi

javascript - 无法在 pubnub javascript 回调中出错

转载 作者:行者123 更新时间:2023-11-29 21:52:28 25 4
gpt4 key购买 nike

我正在关注这篇博文中的操作方法:http://www.pubnub.com/blog/sending-android-push-notifications-via-gcm-javascript-using-phonegap/

到目前为止,我做了以下事情:

  • 在 Google Dev Console 中创建了一个新项目
  • 启用了适用于 Android 的 Google 云消息传递
  • 获得发件人 ID(项目编号)和服务器键

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

$ 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
安卓 4.4.2
Chrome 30.0(在 WebView 中)
Cordova 3.6.3-0.2.13

最佳答案

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

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

关于javascript - 无法在 pubnub javascript 回调中出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28366062/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com