本地通知的基本目的是使应用程序能够通知用户,它为他们提供了一些信息例如,当应用程序没有在前台运行时,通知用户一个消息或即将到来的约会。本地通知大多是基于时间的,如果触发就会在通知中心显示并呈现给用户。
local notification插件可以通过schedule()一次安排一个或多个本地通知,这些通知可以立即触发或者在某个时间点触发。在安排多个通知时,注意要使用schedule([])数组来包含所有通知。
每个本地通知都需要一个数字id,没有设置默认为0,但是调用本地通知时会取代相同id中较早的那个。
下面是一些属性:
首先执行下面命令安装该插件:
cordova plugin add https://github.com/katzer/cordova-plugin-local-notifications.git
一个通知的例子:
$scope.scheduleSingleNotification = function () {
cordova.plugins.notification.local.schedule({
id: 1,
title: ‘应用提醒’,
text: ‘应用有新消息,快来查看吧’,
at: new Date(new Date().getTime() + 5 * 60 * 1000)
});
};
多个通知的例子:
$scope.scheduleMutipleNotification = function () {
cordova.plugins.notification.local.schedule({
id: 1,
title: ‘应用提醒1’,
text: ‘应用有新消息,快来查看吧’,
at: new Date(new Date().getTime() + 5 * 60 * 1000)
},{
id: 2,
title: ‘应用提醒2’,
text: ‘应用又有新消息,快来查看吧’,
at: new Date(new Date().getTime() + 10 * 60 * 1000)
});
};
推迟提醒:
$scope.scheduleDelayedNotification = function () {
var now =newDate().getTime(),
_5_sec_from_now =newDate(now +5*1000);
cordova.plugins.notification.local.schedule({
text:"Delayed Notification",
at: _5_sec_from_now,
sound:null
});
};
重复提醒:
$scope.scheduleRepeatedlyNotification = function () {
cordova.plugins.notification.local.schedule({
text:"Repeatedly Notification",
firstAt: monday,
every:"day",
icon:"file://img/logo.png"
}, callback);
}
有两种常用的事件类型:
schedule事件将会在你调用schedule()时触发每一个本地通知,trigger事件只有到达它的触发事件才会触发该通知。
schedule Event:
cordova.plugins.notification.local.on("schedule", function(notification) {
alert("scheduled: "+ notification.id);
});
trigger Event:
cordova.plugins.notification.local.on("trigger", function(notification) {
alert("triggered: "+ notification.id);
});
原文链接:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/cordova-pluginslocal-notification/