本帖最后由 m143 于 2021-3-19 11:55 编辑
1、打开APP ,从后端发送推送,APP连续收到2条推送信息2、 打开APP ,APP在后台运行,从后端发送推送(收到一条消息),点击消息进入APP,此时又收到一条消息 ,共计2条
代码
apiready = function() {
initEventListenner();
};
// 极光推送绑定标签|别名 ,alias为空则自动解绑用户别名 1新增|2删除
function bindAliasAndTags(state,alias) {
window.ajpush.bindAliasAndTags(params, function(ret, err) {
console.log('====绑定用户别名和标签成功====')
});
}
// 极光推送 初始化
function initAjpush() {
window.ajpush = api.require('ajpush');
window.ajpush.init(function(ret) {
if (ret && ret.status) {
console.log('初始化极光成功')
bindAliasAndTags();
}
});
}
//设置监听
function setListener(){
window.ajpush.setListener(
function(ret) {
alert('通知被点击,收到数据:111\n' + JSON.stringify(ret));//监听通知被点击后收到的数据
var id = ret.id;
var title = ret.title;
var content = ret.content;
var extra = ret.extra;
console.log('在app内收到极光推送,并提示')
// console.log(JSON.stringify(ret))
if (api.systemType == 'ios') {
api.notification({
notify: {
title: title,
content: content,
extra: extra
}
});
}
if (isLogin()) {
api.sendEvent({
name: 'sync_message_count'
});
}
}
);
}
// 初始化监听事件
function initEventListenner() {
initAjpush();
// 安卓平台收到消息被点击
if (api.systemType == 'android') {
api.addEventListener({
name: 'appintent'
}, function(ret, err) {
var extra = ret.appParam.ajpush.extra;
if (extra.message_type) {
switch (extra.message_type) {
case 1:
{
break;
}
case 2:
{
toDetail({
tid: extra.tid
})
break;
}
}
}
})
}
// 极光推送消息被点击 IOS
if (api.systemType == 'ios') {
api.addEventListener({
name: 'noticeclicked'
}, function(ret, err) {
alert('通知被点击,收到数据333:\n' + JSON.stringify(ret));//监听通知被点击后收到的数据
var extra = ret.value;
switch (extra.message_type) {
case 1:
{
break;
}
case 2:
{
toDetail({
tid: extra.tid
})
break;
}
}
})
api.addEventListener({name:'pause'}, function(ret,err) {
onPause();//监听应用进入后台,通知jpush暂停事件
})
api.addEventListener({name:'resume'}, function(ret,err) {
onResume();//监听应用恢复到前台,通知jpush恢复事件
})
}