xyTimeout

来自于:小沈阳的弟弟

概述

xyTimeout是一个用原生代码编写的计时器功能,实现了安卓和IOS两端的定时器操作(类似js中的setTimeout功能)。 由于IOS后台进程运行机制,一般IOS进入后台后半分钟左右会被kill掉,故本模块也提供了borrowTime方法,调用此方法可以向IOS申请到额外的执行时间,让app在进入后台后能够存活稍微久一点。

open

开启定时器功能

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

params

second:

  • 类型:整型
  • 描述:对应执行两次间隔的秒数,单位(秒)

loop:

  • 类型:布尔
  • 描述:(非必选项)是否开启循环执行,默认true

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    state:            //数字类型;对应的值有:success,doThings;

}
    success表示成功创建定时器,doThings表示定时器的轮询回调(一般在doThings中编写自己要处理的逻辑代码)

示例代码

var xyTimeout = api.require('xyTimeout');
xyTimeout.start({
    second:3, //间隔时间,单位(秒)
    loop:true //是否开启循环执行,默认true
},function(ret,err){
    //console.log("调试:" + JSON.stringify(ret));
    //console.log("调试:" + JSON.stringify(err));
    if(ret)
    {
      if(ret.state=="success")
      {
        console.log("定时器开启成功");
      }
      else if(ret.state=="doThings")
      {
        console.log("做点什么事吧,编写您自己的逻辑代码");
      }
    }
});

可用性

Android/IOS系统

可提供的1.0.0及更高版本

stop

获取客户端当前websocket的连接状态

stop({params})

params(不需要任何参数)

示例代码

var xyTimeout = api.require('xyTimeout');
xyTimeout.stop();

可用性

Android/IOS系统

可提供的1.0.0及更高版本

borrowTime

IOS端向系统申请额外的执行时间(让app进入后台后能够存活稍微久一点,一般最多十分钟左右),建议在App进入后台时调用此方法

borrowTime({params});

params

second:

  • 类型:整型
  • 描述:申请到的时间,单位(秒),app进入后台后能够在这个时间内不被系统kill掉,最大建议不要超过600

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    state:            //数字类型;对应的值有:success;

}
    success表示申请成功

示例代码

var xyTimeout = api.require('xyTimeout');
xyTimeout.borrowTime({
    second:300
},function(ret,err){
    if(ret)
    {
      if(ret.state=="success")
      {
        console.log"成功申请到进入后台后的额外执行时间");
      }
    }
});

可用性

IOS系统

可提供的1.0.0及更高版本

clearBorrowTime

取消向IOS申请到的额外执行时间请求

clearBorrowTime();

示例代码

var xyTimeout = api.require('xyTimeout');
xyTimeout.clearBorrowTime();

可用性

IOS系统

可提供的1.0.0及更高版本