使用条件:uniappp应用后台执行时接收到推送消息,消息展示到通知栏,并且点击通知栏可以到达相应的页面。
1.uniapp后台执行接收到消息,涉及到一个后台保活。测试手机红米K50,设置电量无限制,我测试保活一个半小时。(可能会活得久一点,但是我忍不住点进去了一下)
2.消息展示到通知栏。在js文件里面编写create方法创建消息,并在想要使用的地方调用。(至于为什么要把创建消息单独拆出来,这可以用作后续的recive透传消息。)
// 创建消息
function create(content, payload = {}, options, isChange){
plus.push.createMessage(...arguments);
const delay = options.delay ? (~~options.delay * 1000) : 0;
setTimeout(()=>{
// isChange && this.changeBadge();
}, delay)
}
// 调用
create("点击查看消息内容>>",{url: "/pages/notice/notice"},{
// url写自己的,我是要跳转到pages目录下的notice文件夹的notice.vue 页面。
delay: 0.5, // 延时0.5秒显示
title: "您有新的公告信息",
when:new Date(),
cover:true, // 是否覆盖下一条消息
icon:"../static/logo.png",
sound:"system" // 声音,默认使用系统声音,这句可以不加