您现在的位置是: 博客首页 > 前端 前端

uni-app中的消息推送

SU博客网 2020-11-13 36浏览 原创

APP端信息推送,uni-app封装好的,前端代码基本不用怎么写也能收到推送信息,而且官方推送是免费提供的,但是有些偏门的手机品牌是接到不了的,这个就是弊端,我的手机是努比亚红魔,收到不了,但是魅族和小米、华为可以接收的

 

1. 在manifest.json勾选一下Push推送

 

2.在Dcloud开发者平台找当前项目,然后点击项目名,进去了再点击配置

 

只要APP信息配置好了,创建推送发送即可收到。

先说下厂商推送设置,如果申请配置设置了情况下,可以离线推送,如果没有申请的话只能在线推送,就是需要打开或者运行APP的时候有推送信息。

 

3.配置完成后会自动生成AppID等信息,把这些信息发给后端(如果不做动态推送的话不需要给后端)

 

4.在App.vue里面(作用就是点击信息的时候,执行APP哪些功能方法,不设置直接进入APP)

onLaunch: function() {
    //#ifdef APP-PLUS  
    //开启推送
    uni.subscribePush({
        provider: "unipush",
        success: function(res) {
            console.log("success:" + JSON.stringify(res));
        }
    });
    let osname = plus.os.name
    console.log(osname)
    if (osname == 'Android') {
        uni.onPush({
            provider: "unipush",
            success: function() {
                console.log("监听透传成功");
            },
            callback: function(data) {
                console.log("接收到透传数据:" + JSON.stringify(data));
                plus.push.createMessage(data.data, {});
            }
        });
    }
    // 监听在线消息事件
    if (osname == 'iOS') {
        plus.push.addEventListener('receive', function(msg) {
            plus.push.createMessage(msg.content, "LocalMSG", {
                cover: false
            });
            setTimeout(() => {
                plus.push.clear();
            }, 3000)
        }, false);
    }
    plus.push.addEventListener(
        "click",
        //这里写业务逻辑
        function(data) {
            console.log(data);
        },
        false
    );
    plus.push.addEventListener('receive',function(res){
        let options = {cover:false};
        console.log(res)
        console.log(res.content)
        plus.push.createMessage(res.content,res.payload,options);
    },false)
}

 

效果图:

点赞 0

发表评论

欢迎您:

我的名片

SU博客网
SU博客网站是一个IT技术分享的网站,也是开发中的一个笔记,遇见每个问题都会记录下来,让大家更轻易的解决问题。

站点信息

  • 网站程序:Java
  • 博客名称:SU博客网
  • 文章统计34
  • 标签总数10
  • 分类总数4
  • 留言数量0

QQ 交流群