【发布时间】:2022-01-11 00:07:14
【问题描述】:
我有很多来自改造 API 调用的单一返回方法,如下所示;
@GET("api/parametre/kitaptur/liste")
fun getKitapTurListe():Single<ArrayList<KitapturModel>>;
在视图模型中,我通过添加像这样的服务 api 调用方法使用 CompositeDisposable 调用此服务;
disposible.add(
parametreService.kitapTurKaydet(json)
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
.subscribeWith(object : DisposableSingleObserver<ResponseStatusModel>(){
override fun onSuccess(response: ResponseStatusModel) {
parametreEklemeError.value = false;
parametreEklemeLoading.value = false;
parametreEklemeResponse.value = response;
customSharedPreferences.removeFromSharedPreferences(PARAM_KITAPTUR_DB_KEY);
}
override fun onError(e: Throwable) {
parametreEklemeError.value = true;
parametreEklemeLoading.value = false;
}
}));
每次我写这个一次性添加。但是我必须使用像here 这样的通用方法来调用我的服务。如何在我的基本视图模型中为单个 api 调用转换 safeCall 方法。
【问题讨论】:
标签: android mvvm retrofit2 viewmodel kotlin-coroutines