f***@qq.com
f***@qq.com
  • 发布:2020-04-22 20:06
  • 更新:2021-08-10 08:55
  • 阅读:3548

unipush当APP在后台时如何及时收到推送通知反馈?

分类:uni-app

在uniapp中使用了unipush。我想做到APP即使在后台或者熄屏的情况下,也可以在收到推送的通知时自动播报提示铃声。
现在APP打开后按Home键放到后台,当服务器下发通知时手机上显示了推送。但只要不点通知,或者打开APP转入前台,接收通知的回调就不会处理。
我在文档中发现有iOS的插件可以解决( https://ext.dcloud.net.cn/plugin?id=690 )。请问在安卓中怎么办?

2020-04-22 20:06 负责人:无 分享
已邀请:
HawkLu92

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  
}
  • f***@qq.com (作者)

    Vue.prototype.listenPush 这个回调我写在App.vue中,没有起作用。这段代码要怎么才能正确运行?

    2020-04-24 17:15

HawkLu92

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'  
        })  
    },
t***@163.com

t***@163.com

COMM 对象是怎么生成的

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