【问题标题】:Periodic refresh implementation in Mvp androidMvp android中的定期刷新实现
【发布时间】:2017-05-25 04:59:30
【问题描述】:

我需要每 10 分钟从服务器定期刷新 recyclerview。目前我正在为应用程序实现 MVP 架构。以下是我想到的方法列表。

  1. 我是否需要在 Presenter 中使用 Observable.interval 来每 10 分钟调用一次 api ?
  2. 由于用户在不使用应用程序后不会看到任何更新,因此我没有使用服务或广播接收器。

我应该如何解决这个问题,任何帮助都会非常有用。

谢谢, 山西

【问题讨论】:

    标签: android android-recyclerview mvp


    【解决方案1】:

    使用定时器

    int mins = 10; // The delay in minutes
    Timer timer = new Timer();
    timer.schedule(new TimerTask() {
    @Override
    public void run() { 
         //perform your task
         yourAdapter.notifyDataSetChanged();
    }
    }, 0, 1000 * 60 * mins);
    

    【讨论】:

    • 感谢您的回复。上面的实现只是刷新了适配器,但不会进行任何 api 调用。我需要每 10 分钟调用一次服务器。我应该在 run() 方法中使用演示者调用吗?
    【解决方案2】:
    Disposable disposable = Observable.interval(10, TimeUnit.MINUTES)
                    .observeOn(AndroidSchedulers.mainThread())
                    .subscribeOn(Schedulers.newThread())
                    .subscribe(run->{
                           you_presenter.getAllData();
                    });
    
    
    @override
    public void showList(Data data){
         yourAdapter.addData(data);
         yourAdapter.notifyDataSetChanged();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-29
      • 1970-01-01
      相关资源
      最近更新 更多