美文网首页
修改Glide4.11的超时时间

修改Glide4.11的超时时间

作者: 苍蝇的梦 | 来源:发表于2022-01-19 17:17 被阅读0次

    2022-01-19 遇到的一点小问题
    最近用bash写了个cgi脚本获取图片,没有做压缩处理,所以遇到大一点的图片下载会比较慢。
    App用的Glide,超时时间太短,会下载失败。

    21.0MB
    网上找了下,很多介绍通过使用okhttp来修改Glide的超时时间,随便找了个,试了一下,可以实现。
    记录一下。
    .
    .
    implementation 'com.github.bumptech.glide:glide:4.11.0'
    implementation 'com.github.bumptech.glide:okhttp3-integration:4.11.0'
    

    版本是看的mvnrepository,选择的4.11.0

    package com.wannoo.test;
    
    import android.content.Context;
    
    import androidx.annotation.NonNull;
    
    import com.bumptech.glide.Glide;
    import com.bumptech.glide.Registry;
    import com.bumptech.glide.annotation.GlideModule;
    import com.bumptech.glide.integration.okhttp3.OkHttpUrlLoader;
    import com.bumptech.glide.load.model.GlideUrl;
    import com.bumptech.glide.module.AppGlideModule;
    
    import java.io.InputStream;
    import java.util.concurrent.TimeUnit;
    
    import okhttp3.OkHttpClient;
    
    @GlideModule
    public class MyGlideAppModule extends AppGlideModule {
        @Override
        public void registerComponents(@NonNull Context context, Glide glide, @NonNull Registry registry) {
            OkHttpClient client = new OkHttpClient.Builder()
                    .readTimeout(120, TimeUnit.SECONDS)
                    .build();
            OkHttpUrlLoader.Factory factory = new OkHttpUrlLoader.Factory(client);
            glide.getRegistry().replace(GlideUrl.class, InputStream.class, factory);
        }
    }
    

    用的@GlideModule,不用在AndroidManifest.xml注册GlideModule

    相关文章

      网友评论

          本文标题:修改Glide4.11的超时时间

          本文链接:https://www.haomeiwen.com/subject/ahjrhrtx.html