在uniapp中使用了unipush。我想做到APP即使在后台或者熄屏的情况下,也可以在收到推送的通知时自动播报提示铃声。
现在APP打开后按Home键放到后台,当服务器下发通知时手机上显示了推送。但只要不点通知,或者打开APP转入前台,接收通知的回调就不会处理。
我在文档中发现有iOS的插件可以解决( https://ext.dcloud.net.cn/plugin?id=690 )。请问在安卓中怎么办?
f***@qq.com
- 发布:2020-04-22 20:06
- 更新:2021-08-10 08:55
- 阅读:3548
HawkLu92 - GoodGoodCoding,DayDayNoBug
/**
* 监听消息推送事件
*
*/
Vue.prototype.listenPush = function() {
let _this = this;
// #ifdef APP-PLUS
console.log(plus.push.getClientInfo());
plus.push.setAutoNotification(true);
let target = {}
plus.push.addEventListener("click", function(msg) {
console.log(msg);
if (msg.payload) { //如果透传消息带参数
target = COMM.strToObj(msg.payload) //透传字符串转对象
if (target.hasOwnProperty('url')) { //是否需要页面跳转
_this.toPage(target);
}
}
})
plus.push.addEventListener("receive", function(msg) {
// iphone 在已打开APP的情况下,通知栏不会弹出消息框,此时需要本地创建一条通知
console.log(msg);
if (msg.hasOwnProperty('type') && msg.type != 'click') {
COMM.createLocalMsg({
title: msg.title,
content: msg.content,
payload: msg.payload
})
}
})
// #endif
}
HawkLu92 - GoodGoodCoding,DayDayNoBug
/**
* @description 创建本地推送消息
* @param {Object} msg
* msg 字段
* title push消息标题
* content push消息内容
* payload push消息参数
*/
createLocalMsg(msg) {
plus.push.createMessage(msg.content, this.paramsURL(msg.payload), {
title: msg.title,
delay: 0,
sound: 'system'
})
},
f***@qq.com (作者)
Vue.prototype.listenPush 这个回调我写在App.vue中,没有起作用。这段代码要怎么才能正确运行?
2020-04-24 17:15