本篇将讲述使用Glide时遇到的各种问题与解决

关于Glide各种问题的解决方案集合(不断更新)

本篇已Java为主要语言

Glide使用

添加依赖

12implementation 'com.github.bumptech.glide:glide:4.11.0'annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'

关于GlideModule的问题

在项目中创建一个class文件

继承AppGlideModule

添加注解@GlideModule

1234@GlideModulepublic class MyGlideModule extends AppGlideModule {}

里面并不需要填写内容

替换Glide的请求方式

添加依赖

12implementation "com.github.bumptech.glide:okhttp3-integration:4.11.0"implementation 'com.squareup.okhttp3:okhttp:4.7.2'

在项目中创建一个class文件

继承AppGlideModule

添加注解@GlideModule

重写*registerComponents**和isManifestParsingEnabled***方法

在**registerComponents**方法中替换为OkHttp

123456789101112131415161718@GlideModulepublic class MyGlideModule extends AppGlideModule { @Override public void applyOptions(Context context, GlideBuilder builder) { } @Override public void registerComponents(Context context, @NotNull Glide glide, Registry registry) { //Glide 底层默认使用 HttpConnection 进行网络请求,这里替换为 Okhttp registry.replace(GlideUrl.class, InputStream.class, new OkHttpUrlLoader.Factory(ProgressManager.getInstance().with(new OkHttpClient.Builder()).build())); } @Override public boolean isManifestParsingEnabled() { return false; }}