notification

向用户发出震动、声音提示、灯光闪烁、手机状态栏通知等提示行为,支持闹钟功能。如果是状态栏通知,当用户点击该通知,页面可以通过监听 noticeclicked 事件获取该通知相关内容。

注:当应用在前台弹出通知提示时,iOS平台的通知将在显示几秒后消失,不会在通知栏保留。

notification({params}, callback(ret, err))

params

vibrate:

  • 类型:数组
  • 默认值:[100, 500, 100, 500]
  • 描述:(可选项)伴随节奏的震动,时间数组,单位:毫秒。iOS平台震动时间为固定值;Android平台节奏为【等待-震动-等待-震动..】,例如[100, 500, 100, 500]表现效果为:等待100毫秒-震动500毫秒-等待100毫秒-震动500毫秒

sound:

  • 类型:字符串
  • 默认值:default
  • 描述:(可选项)提示音,默认为系统设置的提示音。Android支持传入widget协议音频文件,例如:widget://res/horse.mp3;当实现闹钟功能时,iOS只支持widget://路径协议

light:

  • 类型:布尔型
  • 默认值:false
  • 描述:(可选项)设备提示灯是否闪烁

notify:

  • 类型:JSON 对象
  • 默认值:无
  • 描述:(可选项)弹出通知到状态栏。弹出时是否震动或响铃,可通过设置vibrate,sound等字段配合实现。
  • 内部字段:
  1. {
  2. title:'' //标题,Android中默认值为应用名称,支持Android和iOS 8.2以上系统
  3. content:'' //内容,默认值为'有新消息'
  4. extra:'' //附加信息,页面可以监听noticeclicked事件得到点击的通知的附加信息
  5. updateCurrent: false //是否覆盖更新已有的通知,取值范围true|false。只Android有效
  6. }

alarm:

  • 类型:JSON 对象
  • 默认值:无
  • 描述:(可选项)设置闹铃。与notify配合使用,即如果设置了闹铃,那么对应的notify将在设定的闹铃时间触发
  • 内部字段:
  1. {
  2. hour: //小时,数字类型,取值范围(0-23),默认值为当前系统时
  3. minutes: //分钟,数字类型,取值范围(0-59),默认值为当前系统分
  4. daysOfWeek: //通知循环时间,以周为单位,数组类型,取值范围[1,2,3,4,5,6,7],表示周日、周一、周二、周三、周四、周五、周六。若不传则不循环,只在当天或隔天的指定时间通知一次
  5. time: //闹铃目标时间,数字类型,1970年至今的毫秒数,只在设定的时间执行一次,若设置了time,那么hour、minutes、daysOfWeek将被忽略
  6. openApp: //当闹铃触发时是否打开当前应用,如果打开,则不弹出状态栏通知,bool类型,默认值为false。仅支持Android平台。
  7. }

callback(ret, err)

如果 notification 时传入了 notify或者alarm,那么将收到 callback,返回本次状态栏通知的 id或者闹铃 id,该 id 可用于取消状态栏通知或者闹铃。

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. id:1 //弹出到状态栏通知的id或者设置的闹铃id,可用于取消通知或者闹铃
  3. }

示例代码

  1. //仅震动
  2. api.notification({
  3. vibrate:[100, 500, 200, 500, 300, 500, 400, 500]
  4. });
  5. //仅提示音
  6. api.notification({
  7. sound:'default'
  8. });
  9. //提示音+震动
  10. api.notification();
  11. //弹出状态栏通知
  12. api.notification({
  13. notify: {
  14. title: '通知标题',
  15. content: '通知内容'
  16. }
  17. });
  18. //闹铃
  19. api.notification({
  20. notify: {
  21. content: '闹钟'
  22. },
  23. //每周一、二、三、四、五的7点30分闹铃
  24. alarm: {
  25. hour: 7,
  26. minutes: 30,
  27. daysOfWeek: [2, 3, 4, 5, 6]
  28. }
  29. }, function(ret, err) {
  30. var id = ret.id;
  31. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本