Android实现轮询的三种方式
本文实例为大家分享了Android实现轮询的方式,供大家参考,具体内容如下
1.通过rxjava实现(代码中使用了Lambda表达式)
privatestaticfinalintPERIOD=10*1000;
privatestaticfinalintDELAY=100;
privateDisposablemDisposable;
/**
*定时循环任务
*/
privatevoidtimeLoop(){
mDisposable=Observable.interval(DELAY,PERIOD,TimeUnit.MILLISECONDS)
.map((aLong->aLong+1))
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(aLong->getUnreadCount());//getUnreadCount()执行的任务
}
//关闭定时任务
if(mDisposable!=null)mDisposable.dispose();
2.通过Handler实现
privateHandlermHandler=newHandler(Looper.getMainLooper());//全局变量
privateRunnablemTimeCounterRunnable=newRunnable(){
@Override
publicvoidrun(){//在此添加需轮寻的接口
getUnreadCount();//getUnreadCount()执行的任务
mHandler.postDelayed(this,20*1000);
}
};
//关闭定时任务
mHandler.removeCallbacks(mTimeCounterRunnable);
3.使用Java的Timer和TimerTask实现
privatestaticfinalintPERIOD=10*1000;
privatestaticfinalintDELAY=100;
privateTimermTimer;
privateTimerTaskmTimerTask;
privatevoidtimeLoop2(){
mTimer=newTimer();
mTimerTask=newTimerTask(){
@Override
publicvoidrun(){
//在此添加轮询
}
};
mTimer.schedule(mTimerTask,DELAY,PERIOD);
}
//关闭定时任务
if(mTimer!=null)mTimer.cancel();
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
热门推荐
10 祝女儿简短祝福语大全
11 大学新年祝福语简短创意
12 元旦适合的祝福语简短
13 朋友出远门祝福语简短
14 初六简短的祝福语
15 祝男孩生日祝福语简短
16 同事调离的祝福语简短
17 拜年红包的祝福语简短
18 妈妈生日祝福语简短励志