❤ 写在前面
如果觉得对你有帮助的话,点个小❤❤ 吧,你的支持是对我最大的鼓励~
欢迎关注我的公众号【有更多的前端教程】 或者来看 我的个人网站
❤前言
APP推送使用的是uniPush
❤第一步
前往开发者中心进行厂商配置
❤ 第二步
修改应用信息
如何使用公用证书,应用签名直接使用下发框框里面的(温馨提示:需要在打包的情况测试)
❤ 第三步
Hbuilder里面需要在manifest.json的App模块配置,勾选上Push
❤第四步
登录的时候登录uniPush
uniPush() {
//#ifdef APP-PLUS
this.isOpenAuthority() //监测是否开启了通知权限
var info = plus.push.getClientInfo();
console.log('这是用户信息', info);//info里面包含了cid,后面测试可以用到
this.bindAliasAndTag()
/* 5+ push 消息推送 ps:使用:H5+的方式监听,实现推送*/
plus.push.addEventListener("click", function(msg) {
//这里可以写跳转业务代码
//点击通知时触发
//比如跳转/提示
}, false);
// 监听在线消息事件
plus.push.addEventListener("receive", function(msg) {
//这里可以写跳转业务代码
}, false);
//#endif
},
//是否打开了通知权限
isOpenAuthority() {
if(plus.os.name=='Android'){
var main = plus.android.runtimeMainActivity();
var pkName = main.getPackageName();
var NotificationManagerCompat = plus.android.importClass(
"android.support.v4.app.NotificationManagerCompat");
var packageNames = NotificationManagerCompat.from(main);
console.log(JSON.stringify(packageNames));
if (packageNames.areNotificationsEnabled()) {
console.log('已开启通知权限');
} else {
uni.showModal({
title: '温馨提示',
content: '请先打开APP通知权限,否则无法收到推送信息',
showCancel: true,
success: function(res) {
if (res.confirm) {
var Intent = plus.android.importClass('android.content.Intent');
var intent = new Intent(
'android.settings.APP_NOTIFICATION_SETTINGS'); //可设置表中所有Action字段
intent.putExtra('android.provider.extra.APP_PACKAGE', pkName);
main.startActivity(intent);
}
}
});
}
}
}
❤ 第五步
测试通知
前往Dcloud后台,使用cid进行指定发送,cid在登录的时候,可以获取得到
至此,就可以收到推送了,确保通知权限打开了~
谢谢,如果有什么不懂的,欢迎提问~