0

我正在使用 pushwoosh phonegap 示例,它工作正常。现在我需要用回调来检索令牌,但不知道该怎么做。在 main.js 中,我设置了一个变量来接收来自 PushNotification.js 函数 initPushwoosh() 的返回值

这是 main.js 中的部分

function init() {
document.addEventListener("deviceready", deviceInfo, true);
var vvvtoken=document.addEventListener("deviceready", initPushwoosh, true);
var html='<h3>'+vvvtoken+' </h3>';
 $('#mailList').html(html).listview('refresh');

 }

这是来自 initPushwoosh() 的部分

function initPushwoosh()
{

var pushNotification = window.plugins.pushNotification;
// CHANGE projectid & appid
pushNotification.registerDevice({ projectid: "xxxxxxxx", appid : "xxxxxxxxxxxx" },
function(status) {
var pushToken = status;
console.warn('push token: ' + pushToken);
return pushToken;
},
function(status) {
console.warn(JSON.stringify(['failed to register ', status]));
return "failed to register";
});

document.addEventListener('push-notification', function(event) {
var title = event.notification.title;
var userData = event.notification.userdata;

if(typeof(userData) != "undefined") {
console.warn('user data: ' + JSON.stringify(userData));
}

navigator.notification.alert(title);
});

}

我在我的安卓手机上运行它,我没有收到任何返回值。如何进行回调并返回令牌?

4

1 回答 1

0

document.addEventListener不运行函数并返回结果。它所做的只是将函数设置为在将来的某个时间运行 - 几乎可以肯定是在您尝试显示令牌之后。

代替

return pushtoken;

尝试:

$("h3").html(pushtoken);
return;
于 2012-12-03T01:46:43.400 回答