我在Android上遇到推送通知问题, 我的主要问题是调用WL.Client.Push.subscribe,然后调用成功或失败回调。
if (WL.Client.Push){
WL.Client.Push.onReadyToSubscribe = function(){
alert("onReadyToSubscribe");
if (isPushSubscribed() == false) {
doSubscribe();
}
};
}
function doSubscribe(){
alert("doSubscribe");
WL.Client.Push.subscribe("myPush", {
onSuccess: doSubscribeSuccess,
onFailure: doSubscribeFailure
});
}
function doSubscribeSuccess(){
WL.Logger.debug("doSubscribeSuccess");
alert("doSubscribeSuccess");
}
function doSubscribeFailure(){
WL.Logger.debug("doSubscribeFailure");
alert("doSubscribeFailure");
}
此代码在前几天运行良好,我最近更改了我的Android软件包名称和我的android显示名称(以及应用程序描述符中使用的api密钥和项目编号)。
这可能是Worklight问题吗?没有任何失败或成功回调是正常的吗?
我还尝试使用远程检查器(WEINRE)进行调试,并且没有导致此行为的javascript错误。
有没有人知道为什么会这样? 我的代码中有什么问题吗?
编辑: 我再次测试了我的iOS版本,它运行正常。对于Android,我仍然有这个问题。 onReadyToSubscribe仅在Android上的app启动时触发,但在用户登录后不会触发。 在iOS中,它在应用程序启动后触发(没有订阅失败或成功回调)以及登录后(使用工作订阅回调)。
编辑2: 在android日志中,我可以看到我登录时: W / CordovaPlugin(26319):尝试发送第二个ID回调:Push924901903
答案 0 :(得分:0)
你是否正在进行onReadyToSubscribe回调?日志?