【发布时间】:2017-04-30 12:18:53
【问题描述】:
我希望以单一方法处理我的所有回复。目的是在响应码不是3的时候调用服务,当响应码是3的时候我打算先刷新token再调用同一个服务。
我创建了一个Basecallback 类来捕获一种方法,但我看不到日志,也无法捕获断点。
BASECALLBACK.class
public class BaseCallBack<T> implements Callback<T> {
@Override
public void onResponse(Call<T> call, Response<T> response) {
if (!response.isSuccessful()){
Log.d("BaseCallback","Response Fail");
}
}
@Override
public void onFailure(Call<T> call, Throwable t) {
t.toString();
}
}
调用方法
ApiManager.getInstance().getUsers().enqueue(new BaseCallBack<List<User>>() {
@Override
public void onResponse(Call<List<User>> call, Response<List<User>> response) {
if (response.isSuccessful()){
}
}
@Override
public void onFailure(Call<List<User>> call, Throwable t) {
}
});
我只想处理我的服务单一方法。
【问题讨论】:
-
除非我遗漏了什么,否则您的
BaseCallback类不会做任何事情,因为您将使用传递给enqueue的匿名实现完全覆盖它。所以无论你希望完成什么,我认为这段代码都做不到。
标签: android performance retrofit response retrofit2