【发布时间】:2013-03-19 02:01:21
【问题描述】:
我正在使用插件的 registerDevice 和 unregisterDevice 方法并在 pushwoosh 中查看我的应用程序的控制面板。我的应用程序的首选项默认为接受推送通知,所以我注册了,这有效,并且我的订阅者计数在 pushwoosh 控制面板中增加。它还会触发push-notification 事件,其中该事件具有notification 属性,如指南所示,但它设置为null。这很令人困惑,因为我还没有从控制面板发送任何推送通知。
然后我将推送偏好设置为false 并取消注册设备。它之所以有效,是因为我的订阅者计数在控制面板中递减,但 fail 回调是触发的回调,它获得的唯一参数是注册 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 开发人员能对此有所了解。
【问题讨论】:
标签: android push-notification cordova