我尝试将Fabric中状态码为400+的所有API响应记录为非致命异常。获取已创建的RestAdapter
外观的简化方法如下:
public static Api get() {
if (mInstance == null) {
mInstance = new RestAdapter
.Builder()
.setEndpoint(API_URL)
.setErrorHandler(new ErrorHandler() {
@Override
public Throwable handleError(RetrofitError cause) {
Crashlytics.logException(new ApiException(cause.getMessage() + ": " + cause.getUrl(), cause));
return cause;
}
})
.build()
.create(Api.class);
}
return mInstance;
}
问题是,所有这些异常都折叠为Fabric中的一个,因为每次在同一行代码中抛出相同的异常。我想根据响应的状态代码对它们进行分类。
我正在思考如何解决这个问题,我想到的想法很少:
ApiException404
等)。......但这两种方法都很难看。感谢您的每一条建议或想法。