Android輪詢器,RxJava Interval;


基於RxJava實現輪詢器,配合Retrofit處理網絡請求輪詢很好用,其它的一些輪詢也都可以使用像Bannre圖之類的;

implementation 'io.reactivex.rxjava2:rxjava:2.2.2'
 private Disposable subscribe;
      //開始輪詢
    public void start(View view) {
        //interval對應參數 :首次執行延時時間 、 每次輪詢間隔時間 、 時間類型
        subscribe = Observable.interval(0,1, TimeUnit.SECONDS)
                .subscribeOn(Schedulers.io())
                .subscribe(new Consumer<Long>() {
                    @Override
                    public void accept(Long aLong) throws Exception {
                        Log.i("ccb", "accept: " + aLong);
                    }
                });
        // 有限制次數的輪詢器
//        Observable.intervalRange(0,10,0,1,TimeUnit.SECONDS)
//                .subscribe(new Consumer<Long>() {
//                    @Override
//                    public void accept(Long aLong) throws Exception {
//                        Log.i("ccb", "accept: "+aLong);
//                    }
//                });
    }
       //結束輪詢
    public void shop(View view) {
        //停止輪詢,銷毀這個Subscribe;
        if (!subscribe.isDisposed())  subscribe.dispose();
    }

如圖,在輪詢到第10次時結束了輪詢;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM