引领中国IT教育新模式、新理念、新成效!
WEB前端框架: 电脑版  |  手机H5版  |  手机APP版  |  WEB后端框架:PHP框架
他的提问
他还没有发布过任何技术问题~
他的解答
他还没有解答任何技术问题~
APP混合式开发

uni-app中实现消息推送

2020-10-20 18:01:33 由元铸老师发布
回答1 点赞0 阅读45

本文主要讲解在uni-app开发中,如何实现消息推送。5+app本身可以实现消息推送,但是把代码放入uni-app中时,ios真机调试没有效果。但是5+app的真机调试是有效果的。本文不是使用plus.runtime的方案推送。而是使用开发者后台中提供的推送功能进行的推送。部分操作需要你根据自己的实际情况填写。

1个答案, 其中有0个被标为正确答案
我来解答

元铸 老师

于2020年10月20日 18:05:34解答

0人点赞

1、打开项目根目录下的mainfast.json文件,切换到APP模块配置选项卡,勾选push(消息推送)模块,如下图所示:

image.png

2、进入开发者后台,点击你当前的应用。进行到Uni Push栏目,进行如下设置,如下图所示:

 image.png

3、配置完成以后,会自动生成配置信息,点击Uni Push-》配置管理-》应用配置,将右侧框中的信息发给后端。

image.png

4、修改App.vue页面,代码如下:

onLaunch: function() {
    initTabBar();
	//#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)
}


保存对当前提问的修改
收起
注:答案超过50个时,该问题将被锁定不允许再解答。
提交您的解答
收起