android应用退了后台,再回到前台调用网络请求时,OKHTTP就会报IOException异常。
结果答案就在https://github.com/square/okhttp/issues/2738
只要加上retryOnConnectionFailure(true)就可以成功阻止此异常。它就是在失败时,再偿试一下。

OkHttpClient client = new OkHttpClient.Builder()
    .retryOnConnectionFailure(true)
    .build();

为什么在失败时,再偿试会好过去检查服务器的状态呢?首先,目前没有什么好办法去检查服务是否断开了,其次,在失败时就再试一次也没有多复杂,还很有效。所以这样做,不是挺好的吗?

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐