uniapp推送unipush使用

1.manifest.json  ---模块化中开启unipush

2.uniapp开发后台配置项目包名签名等---具体获取---打包信息---微信开放平台

ps:签名为特殊格式,需在java环境下查看证书密钥文件获取----

3.app.vue文件中配置监听信息:

例子:

 

复制代码
// 监听信息
var info = plus.push.getClientInfo()
// 使用5+App的方式进行监听消息推送
plus.push.addEventListener("click", function(msg) {
console.log("click:" + JSON.stringify(msg));
console.log(msg.payload);
console.log(JSON.stringify(msg));
// onLaunch 生命周期里,页面跳转有问题,跳不过去
// 应该是页面还没加载,加上定时后,就可以了;
setTimeout(() => {
uni.navigateTo({
url: 'pages/index/index'
})
}, 1000)
}, false);
// 监听在线消息事件
plus.push.addEventListener("receive", function(msg) {
//业务代码
console.log("recevice:" + JSON.stringify(msg))
}, false);
复制代码

 

4.登陆时获取设备clientId发送后端

复制代码
                uni.getProvider({
                            service: 'push',
                            success: e => {
                                that.provider = e.provider;
                                uni.subscribePush({
                                    provider: that.provider[0],
                                    success: function(res) {
                                        var inf = plus.push.getClientInfo();
             
                                        if (uni.getSystemInfoSync().platform == 'android') {
                                            that.clientId1 = inf.clientid;
                                            that.tokenType = 'android';
                                            console.log(that.clientId1)
                                        } else if (uni.getSystemInfoSync().platform == 'ios') {
                                            that.clientId = inf.token;
                                            that.tokenType = 'ios';
                                        }
                                        uni.onPush({
                                            provider: that.provider[0],
                                            success: e => {},
                                            callback: e => {}
                                        });
                                    },
                                    fail: function(err) {    
                                        uni.onPush({
                                            provider: that.provider[0],
                                            success: e => {},
                                            callback: e => {}
                                        });
                                    }
                                });
                            },
                            fail: e => {
                            
                                uni.subscribePush({
                                    provider: that.provider[0],
                                    success: function(res) {                        
                                        uni.onPush({
                                            provider: that.provider[0],
                                            success: e => {},
                                            callback: e => {}
                                        });
                                    },
                                    fail: function(err) {                    
                                        uni.onPush({
                                            provider: that.provider[0],
                                            success: e => {},
                                            callback: e => {}
                                        });
                                    }
                                });
                            }
                        });
复制代码

 

 

5.uni开发后台unipush配置中的"APPKEY", "APPID","MASTERSECRET",交予后端

posted on   SE7EN_96  阅读(1384)  评论(1编辑  收藏  举报

相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示