nativeTimer

来自于:开发者立即使用

start stop setInterval acquireCpu releaseCpu

概述

nativeTimer封装了定时器功能,支持同一页面支持打开多个timer,支持延时执行与修改定时器时间间隔,支持循环与非循环定时器的使用。 Timer的执行受限于系统的优化策略:IOS平台在应用退到后台时,timer会随应用被系统暂停;Android在应用退到后台或者屏幕熄灭时,timer可能会被系统延迟执行或者暂停。

start

启动一个新的计时器。

start(callback(ret))

params

interval:

  • 类型:数字类型
  • 描述:(可选项)计时器循环周期。单位:秒
  • 默认:1

cycle:

  • 类型:布尔
  • 描述:(可选项)计时器是否循环
  • 默认值:true(循环)

delay:

  • 类型:数字类型
  • 描述:(可选项)计时器延迟执行时间,0为立即执行
  • 默认值:0

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. id:0 //数字类型;本计时器的id;
  3. }

示例代码

  1. var nativeTimer = api.require('nativeTimer');
  2. var params = {
  3. interval: 10,
  4. cycle: true,
  5. delay: 0,
  6. }
  7. nativeTimer. start(params, function(ret){
  8. console.log('计时器' + ret.id + '触发回调..');
  9. });

可用性

iOS系统,android系统

可提供的1.0.0及更高版本

stop

通过计时器ID结束1个或者多个计时器。

stop(params);

params

ids:

  • 类型:数组类型
  • 描述:计时器id的集合

示例代码

  1. var nativeTimer = api.require('nativeTimer');
  2. nativeTimer.stop({
  3. ids:[0, 1]
  4. })

可用性

iOS系统,android系统 可提供的1.0.0及更高版本

setInterval

修改某个计时器的循环周期(只可修改循环计时器)

setInterval(params);

params

id:

  • 类型:数字类型
  • 描述:计时器id

interval:

  • 类型:数字类型
  • 描述:新的循环周期,单位:秒

示例代码

  1. var nativeTimer = api.require('nativeTimer');
  2. nativeTimer.setInterval({
  3. id: 0,
  4. interval: 5
  5. });

可用性

iOS系统,android系统 可提供的1.0.0及更高版本

acquireCpu

向系统声明本应用保持对CPU的占用,可提高应用在手机锁屏的情况下,timer的准确率,但会消耗更多的电量。仅支持Android系统。

acquireCpu();

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:0 //数字类型,0-操作失败;1-操作成功;
  3. }

示例代码

  1. var nativeTimer = api.require('nativeTimer');
  2. nativeTimer.acquireCpu();

可用性

iOS系统,android系统 可提供的1.0.0及更高版本

releaseCpu

释放本应用对CPU的占用,与acquireCpu配对使用。仅支持Android系统。

releaseCpu();

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:0 //数字类型,0-操作失败;1-操作成功;
  3. }

示例代码

  1. var nativeTimer = api.require('nativeTimer');
  2. nativeTimer.releaseCpu();

可用性

iOS系统,android系统 可提供的1.0.0及更高版本