如图,我们在使用App时,经常能碰到消息栏上app推送的消息,而现在比较常用的推送平台比如“极光”、“融云”等,一是付费,二是涉及到Android原生代码。噗,前面都说了,Cordova就是让普通用户可以开发App,既然如此,怎么容忍要写大量原生代码和配置呢。
So,今天要介绍的就是如何通过Cordova插件时间消息栏上的消息通知。
注:浏览本文章前,请先了解以下内容
安装插件
cordova plugin add cordova-plugin-local-notification
该命令执行完成后,可以通过cordova plugin list
查看已安装的插件列表
这时候可以看到除了cordova-plugin-local-notification
插件外,另外又多出了两个插件
cordova-plugin-device # 获取设备信息
cordova-plugin-badge # 未读消息数徽章显示
这两个插件都是cordova-plugin-local-notification
必须依赖的,所以在安装cordova-plugin-local-notification
时就自动安装了这里两个插件
zyd.notification = {
look: false,
init : function () {
try {
setInterval(function(){
if(!zyd.notification.look){
cordova.plugins.notification.local.schedule({
id: Math.random(),
title: '会议通知',
text: '今天下午17点30分 \n塔1C座2306室-会议室\n开年终会议... ',
foreground: true,
actions: [
{ id: 'yes', title: '确认查看' },
{ id: 'no', title: '忽略' }
]
});
zyd.notification.look = true;
cordova.plugins.notification.local.un('yes', zyd.notification.success);
cordova.plugins.notification.local.on('yes', zyd.notification.success);
cordova.plugins.notification.local.un('no', zyd.notification.ignore);
cordova.plugins.notification.local.on('no', zyd.notification.ignore);
}else{
console.log("有未读的消息,暂不显示通知");
}
}, 5000);
} catch (err) {
alert("发生异常了。" + err);
}
},
success: function(notification, eopts){
zyd.notification.look = false;
alert("消息详情:消息标题["+notification["title"]+"], 消息内容["+notification["text"]+"]")
for(var i in eopts){
console.log(i + "==" + eopts[i]);
}
for(var i in notification){
console.log(i + "==" + notification[i]);
}
},
ignore: function(notification, eopts){
zyd.notification.look = false;
}
};
然后在页面上通过以下命令调用
zyd.notification.init();
接下来就可以打包测试或者真机运行(本次是在模拟机上测试)
真机测试
Cordova实现消息推送,必须要注意的几点:
①安装插件
②编写推送相关的代码
源码地址:cordova-study
热门评论
您好,我想在锁屏画面也展示通知,但我找不到开启悬浮,锁屏展示权限的方法,请问要怎么做呢
您好 为什么报zdy为undefined错误呢? 需要怎么改。 前端是vue
请问这个插件需要添加权限方面的配置吗?我在安卓4.4版本的手机上是正常的,但是拿到6.0及以上的就不行了