类io.reactivex.observers.ResourceObserver源码实例Demo

下面列出了怎么用io.reactivex.observers.ResourceObserver的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: AppOpsX   文件: PermPresenter.java
void setMode(final OpEntryInfo info) {
  Helper.setMode(context, appInfo.packageName, info)
      .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
      .subscribe(new ResourceObserver<OpsResult>() {
        @Override
        public void onNext(OpsResult value) {

        }

        @Override
        public void onError(Throwable e) {
          mView.updateItem(info);
        }

        @Override
        public void onComplete() {

        }
      });
}
 
源代码2 项目: FlowHelper   文件: VerticalTabActivity.java
@SuppressLint("CheckResult")
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_vertical_tab);

    mTabFlowLayout = findViewById(R.id.tabflow);
    mRecyclerView = findViewById(R.id.recyclerview);
    mManager = new LinearLayoutManager(this);
    mRecyclerView.setLayoutManager(mManager);

    HttpCreate.getServer().getNaviData()
            .compose(RxUtils.<BaseResponse<List<NaviBean>>>rxScheduers())
            .subscribeWith(new ResourceObserver<BaseResponse<List<NaviBean>>>() {
                @Override
                public void onNext(BaseResponse<List<NaviBean>> listBaseResponse) {
                    handleData(listBaseResponse);
                }


                @Override
                public void onError(Throwable e) {

                }

                @Override
                public void onComplete() {

                }
            });

}
 
源代码3 项目: AppOpsX   文件: SearchHandler.java
void handleWord(final String text) {
  if (TextUtils.isEmpty(text)) {
    mAdapter.clear();
    return;
  }

  search(text)
      .subscribeOn(Schedulers.io())
      .observeOn(AndroidSchedulers.mainThread()).subscribe(new ResourceObserver<List<AppInfo>>() {


    @Override
    protected void onStart() {
      super.onStart();
    }

    @Override
    public void onNext(List<AppInfo> value) {

      mAdapter.kw = text;
      mAdapter.showItems(value);
      if (!value.isEmpty()) {
        recyclerView.scrollToPosition(0);
      }
    }

    @Override
    public void onError(Throwable e) {

    }

    @Override
    public void onComplete() {

    }
  });


}
 
源代码4 项目: AppOpsX   文件: PermGroupPresenter.java
void changeMode(final int groupPosition, final int childPosition,
    final PermissionChildItem info) {

  info.opEntryInfo.changeStatus();

  Helper.setMode(context, info.appInfo.packageName, info.opEntryInfo)
      .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
      .subscribe(new ResourceObserver<OpsResult>() {
        @Override
        public void onNext(OpsResult value) {

          mView.changeTitle(groupPosition, childPosition, info.opEntryInfo.isAllowed());
        }

        @Override
        public void onError(Throwable e) {
          try {
            info.opEntryInfo.changeStatus();
            mView.refreshItem(groupPosition, childPosition);
          } catch (Exception e2) {
            e2.printStackTrace();
          }
        }

        @Override
        public void onComplete() {

        }
      });
}
 
源代码5 项目: AppOpsX   文件: ConfigPresenter.java
void restoreOps(final RestoreModel model) {
  final int size = model.preAppInfos.size();
  final AtomicInteger progress = new AtomicInteger();
  mView.showProgress(true, size);

  Observable.fromIterable(model.preAppInfos)
      .flatMap(new Function<PreAppInfo, ObservableSource<OpsResult>>() {
        @Override
        public ObservableSource<OpsResult> apply(@NonNull PreAppInfo appInfo) throws Exception {
          return Helper.setModes(context, appInfo.getPackageName(), AppOpsManager.MODE_IGNORED,
              appInfo.getOps());
        }
      }).subscribeOn(Schedulers.io())
      .observeOn(AndroidSchedulers.mainThread()).subscribe(new ResourceObserver<OpsResult>() {
    @Override
    public void onNext(@NonNull OpsResult opsResult) {
      mView.setProgress(progress.incrementAndGet());
    }

    @Override
    public void onError(@NonNull Throwable e) {
      progress.incrementAndGet();
    }

    @Override
    public void onComplete() {
      mView.showProgress(false, 0);
      Toast.makeText(context, "恢复成功", Toast.LENGTH_LONG).show();
    }
  });
}
 
源代码6 项目: AppOpsX   文件: PermPresenter.java
void load() {
  observable = Helper.getAppPermission(context, appInfo.packageName,
      PreferenceManager.getDefaultSharedPreferences(context)
          .getBoolean("key_show_no_prems", false));

  observable.subscribeOn(Schedulers.io())
      .observeOn(AndroidSchedulers.mainThread())
      .subscribe(new ResourceObserver<List<OpEntryInfo>>() {

        @Override
        protected void onStart() {
          super.onStart();
        }

        @Override
        public void onNext(List<OpEntryInfo> opEntryInfos) {

          if (opEntryInfos != null && !opEntryInfos.isEmpty()) {
            if (autoDisabled) {

              if (sortByMode) {
                reSortByModePerms(opEntryInfos);
              } else {
                mView.showProgress(false);
                mView.showPerms(opEntryInfos);
              }
            } else {
              autoDisable();
            }

          } else {
            mView.showError(context.getString(R.string.no_perms));
          }
          loadSuccess = true;
        }

        @Override
        public void onError(Throwable e) {
          mView.showError(getHandleError(e));

          loadSuccess = false;
        }

        @Override
        public void onComplete() {
        }
      });
}
 
源代码7 项目: AppOpsX   文件: MainActivity.java
private void loadData(final boolean isFirst) {
  boolean showSysApp = PreferenceManager.getDefaultSharedPreferences(getApplicationContext())
      .getBoolean("show_sysapp", false);
  Helper.getInstalledApps(getApplicationContext(), showSysApp)
      .map(Helper.getSortComparator(getApplicationContext())).subscribeOn(Schedulers.io())
      .observeOn(AndroidSchedulers.mainThread()).subscribe(new ResourceObserver<List<AppInfo>>() {

    @Override
    protected void onStart() {
      super.onStart();
      if(isFirst){
        mProgressBar.setVisibility(View.VISIBLE);
        recyclerView.setVisibility(View.GONE);
      }
    }

    @Override
    public void onNext(List<AppInfo> value) {
      adapter.showItems(value);
      mSearchHandler.setBaseData(new ArrayList<>(value));

      invalidateOptionsMenu();

    }

    @Override
    public void onError(Throwable e) {
      e.printStackTrace();
      mSwipeRefreshLayout.setRefreshing(false);
      Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_LONG).show();

      invalidateOptionsMenu();
    }

    @Override
    public void onComplete() {
      mProgressBar.setVisibility(View.GONE);
      recyclerView.setVisibility(View.VISIBLE);
      mSwipeRefreshLayout.setRefreshing(false);

      if (isFirst) {
        mSwipeRefreshLayout.setEnabled(true);
      }

      invalidateOptionsMenu();
    }
  });
  loadUsers();
}
 
 类所在包
 类方法
 同包方法