我在我的Android项目中第一次使用框架Retrofit.它处理与后端的通信.现在最奇怪的部分是在Android 4.4上,一切都像魅力一样.在下面的每个版本.我得到一个RetrofitError类型java.io.EOFException.所以它第一次失败然后当我按下重试按钮时它工作.那为什么第一次失败呢?
我想解决这个问题,因为用户需要点击重试才很烦人...
有人为此得到了解决方案吗?
我找到了解决方案。在 Android 4.4 中,它们使用 OkHttpclient,这就是它在 4.4 上运行而不是在旧版 Android 版本上运行的原因。
为了解决这个问题,在 gradle 中添加一个依赖项:
compile 'com.squareup.okhttp:okhttp-tests:1.5.1'
Run Code Online (Sandbox Code Playgroud)
并创建一个新客户端,如下所示:
OkHttpClient client = new OkHttpClient();
Run Code Online (Sandbox Code Playgroud)
将新客户端添加到重新适配器以使用它:
setClient(new OkClient(client))
Run Code Online (Sandbox Code Playgroud)
该错误现在应该已解决。
归档时间: |
|
查看次数: |
2564 次 |
最近记录: |