黑灯瞎火
黑灯瞎火
  • 发布:2017-03-24 02:14
  • 更新:2017-03-24 09:58
  • 阅读:1638

android 如何进行消息推送

分类:Native.js

目前整合了h5+中的个推包。
配置完成后,出现一个情况,现在可以接收到推送的消息。点击消息后也可以正确打开app,但是app中无法接收到透传过来的的消息。监听代码如下。

if (mui.os.plus) {
alert("init click");
plus.push.addEventListener("click", function(msg){
alert("click");
// 判断是从本地创建还是离线推送的消息
// IOS 端的消息处理
if (mui.os.ios) {
_pushHandle(msg);
}
// Android 端的消息处理
else if(mui.os.android){

            }  

            console.log(JSON.stringify(msg));  
            alert("click:"+JSON.stringify(msg));  
        });  

alert("init receive");
plus.push.addEventListener("receive", function(msg){
alert("receive");
console.log(JSON.stringify(msg));
alert("receive"+JSON.stringify(msg));
});

}

打印情况是,可以正常打印出 init click, 及 init receive 。但是始终无法打印 click 及 receive 。
各种能想到的方法都尝试过了,包括使用个推sdk文档中的不同消息发送方式。

2017-03-24 02:14 负责人:无 分享
已邀请:
amourz

amourz

安卓接收到的参数是字符串,用JSON.parse(msg)转为json再解析

  • 黑灯瞎火 (作者)

    我的确有点怀疑是解析的问题,但是最主要的是,连解析前一步的receive 和 click 都无法打印出来。 那就更不要说后一步的解析问题了

    2017-03-24 16:56

  • amourz

    回复 黑灯瞎火:对click和recieve的监听要放在mui.plusready()里

    2017-03-24 17:01

  • 黑灯瞎火 (作者)

    是在plusready中了,只是我这个代码是封装到函数里面的的。所以这里没有显示出来,你看我嘴开始的判断 mui.os.plus 这段其实就是判断 plusready 这个函数是否成功加载。 结论中是可以正确打印出 init click, 和 init recieve。说明其实plusready已经正确加载了。

    2017-03-24 17:05

  • amourz

    回复 黑灯瞎火:对mui.os.plus不太熟悉,感觉你用它来判断plus是否加载完成不太保险。查文档mui.os.plus是判断是否是5+环境的

    2017-03-24 17:17

该问题目前已经被锁定, 无法添加新回复