我想在调用我的rx改装服务之前检查手机是否连接到互联网.如果没有连接,我想返回一个包含错误的假响应.
我结束了下面的解决方案,使用defer(),但我认为它可以更好,任何提示?
private Observable<Response> checkNetwork(Observable<Response> retrofitService) { return Observable.defer(new Func0<Observable<Response>>() { @Override public Observable<Response> call() { if (!isOnline()) { return Observable.just(Response.error(R.string.error_no_network_label))); } return retrofitService; } }); }
解决方法
您可以实现改进的ErrorHandler,如下所述:
https://stackoverflow.com/a/21055979/2927901
https://stackoverflow.com/a/21055979/2927901
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。