OkHttp - 检测图像下载超时



在我的安卓应用程序中,我使用glide进行图像加载,使用OkHttp进行网络操作。

如果图像下载时间超过超时时间(例如 10 秒(,我想使用 glide 显示错误图像。我使用 GlideModule 将 OkHttpClient 与 glide 连接起来,但似乎 OkHttpClient 的 readTimeout 方法并没有像我想象的那样工作 - 它不是在等待图像下载完成,而只是在等待字节读取。

所以我的问题是:如果图像下载操作花费超过设置的超时时间,我如何中止 okhttp 请求?我试图在拦截器中做到这一点,但那一刻没有成功。

这在OkHttp中没有实现。我们在此处跟踪整个操作超时。

如果您不耐烦,可以使用ScheduledExecutorService或类似方法在指定的持续时间后取消通话。

最新更新