• cordova插件之Local Notification(本地通知)


    原文链接:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/cordova-pluginslocal-notification/

    本地通知的基本目的是使应用程序能够通知用户,它为他们提供了一些信息例如,当应用程序没有在前台运行时,通知用户一个消息或即将到来的约会。本地通知大多是基于时间的,如果触发就会在通知中心显示并呈现给用户。

    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);
    });
  • 相关阅读:
    [AGC020E] Encoding Subsets
    [Topcoder16346]TwoPerLine
    CF913E Logical Expression
    英语面试
    CRM
    WEB使用第三方支付服务大致流程
    OO语言 prototype 初级用法
    flash设置字体
    air 提示问题
    c#里的BYTE
  • 原文地址:https://www.cnblogs.com/panda-zhang/p/5240814.html
Copyright © 2020-2023  润新知