Hay*_*yan 6 error-handling android mvvm retrofit2 rx-java2
我的目标(也是问题)是做,比如说,集中的错误处理。在大多数情况下,每个 API 端点的错误将以相同的方式处理,所以我不想有重复或大量if else语句。
我的应用程序的架构对应于developer.android.com 中描述的架构
所以,这意味着我应该将错误从repovia传递viewModel到UI layer (Activity/Fragment),以便从该层进行 UI 更改。
我的代码中的一些小部分:
myService.initiateLogin("Basic " + base64, authBody)
.enqueue(new Callback<UserTokenModel>() {
@Override
public void onResponse(Call<UserTokenModel> call, Response<UserTokenModel> response) {
userTokenModelMutableLiveData.setValue(response.body());
}
@Override
public void onFailure(Call<UserTokenModel> call, Throwable t) {
// TODO better error handling in feature ...
userTokenModelMutableLiveData.setValue(null);
}
});
Run Code Online (Sandbox Code Playgroud)
比方说,我们需要表现出吐司每一个onFailure(...)方法调用时或errorBody不会null在onResponse(...)每一个API调用方法。
那么,在保持架构不变的同时进行“集中式”错误处理的建议是什么?
| 归档时间: |
|
| 查看次数: |
2292 次 |
| 最近记录: |