我想处理没有互联网连接的情况.通常我会跑:
ConnectivityManager cm =
(ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
boolean isConnected = activeNetwork != null &&
activeNetwork.isConnectedOrConnecting();
Run Code Online (Sandbox Code Playgroud)
(从此处)在将请求发送到网络之前,如果没有互联网连接则通知用户.
从我看到的Retrofit没有具体处理这种情况.如果没有互联网连接我会RetrofitError
以超时为理由.
如果我想将这种检查结合到每个使用Retrofit的HTTP请求中,我应该怎么做?或者我应该这样做.
谢谢
亚历克斯
在改造2之前,有一种集中处理错误的方法 -
new retrofit.RestAdapter.Builder()
.setEndpoint(apiUrl)
.setLogLevel(retrofit.RestAdapter.LogLevel.FULL)
.setErrorHandler(new CustomErrorHandler(ctx))
Run Code Online (Sandbox Code Playgroud)
但是现在在Retrofit 2中,RestAdapter已经被重命名为,Retrofit
而且没有setErrorHandler()
.有没有办法使用集中式错误处理Retrofit.Builder()
?