【发布时间】:2017-12-18 18:58:58
【问题描述】:
我有一个改造请求,当我在 onResponse 中获取数据时, 我在文本视图中进行了多次插入,我在上面的代码中称之为繁重的工作,如果有的话,我会从 OnReponse 获得结果,否则我会从数据库中获得结果,所以问题是我在 OnResponse 和 OnFailure 中有相同的代码,所以有什么办法把我的繁重工作放在改造之外,等待响应从 OnResponse 或 OnFailure 得到一个结果??
call.enqueue(new Callback<Dashboard>() {
@Override
public void onResponse(Call<Dashboard> call, Response<Dashboard> response) {
realm.beginTransaction();
dashboard = realm.copyToRealmOrUpdate(response.body());
realm.commitTransaction();
// heavy work : insert in data in multiple text views
}
@Override
public void onFailure(Call<Dashboard> call, Throwable t) {
Log.e("error ", "" + t.getMessage());
dashboard = realm.where(Dashboard.class).findFirst();
// heavy work : insert in data in multiple text views
}
}
【问题讨论】:
标签: android multithreading retrofit