Glide异常:Failed to find GeneratedAppGlideModule 解决实践

状况java

App采用Glide作加载网络图片功能。稳定版本的App,忽然有不少图片没法加载出来,经排查,除了Glide框架已经缓存过的图片其余图片都触发了Glide.onErrorgit

异常为github

Failed to find GeneratedAppGlideModule.
You should include an annotationProcessor compile dependency on com.github.bumptech.glide:compiler in your application 
and a @GlideModule annotated AppGlideModule implementation or LibraryGlideModules will be silently ignored

大意是系统没法生成GlideModule。缓存

个人编译环境:网络

Kotlin版本 1.3.61
AndroidStudio版本 3.6
//build.gradle
implementation 'com.github.bumptech.glide:glide:4.9.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'

第一个解决方案:app

无效框架

import com.bumptech.glide.annotation.GlideModule;
import com.bumptech.glide.module.AppGlideModule;

@GlideModule
public class CMAppGlideModule extends AppGlideModule {
    @Override
    public boolean isManifestParsingEnabled() {
        return false;
    }
}

第二个解决方案ide

Java写了CMAppGlideModule这个类后,再对build.gradle的Glide的依赖进行修改测试

以下:annotationProcessor 改成 kaptgradle

implementation 'com.github.bumptech.glide:glide:4.9.0'
    kapt 'com.github.bumptech.glide:compiler:4.9.0'

卸载掉reelase版本的Apk,从新运行安装debug模式的Apk后,恢复正常。

匪夷所思的是

在以前的release版本中,Glide注解一直都是使用annotationProcessor 都没有出现此次的问题,因此我又将kapt改回annotationProcessor ,而后测试debug版本的App的功能,正常。

说明annotationProcessorkapt并非引发此次bug的罪魁祸首,可是release的稳定版本并没有新建GlideModule的注解类也一直正常运行了很长时间。而后最近我也没法再次复现这个异常,故先记录在这里。

顺带一提

Glide的issue中也有相似的问题:

image-20200513212634574

图中的解决方案

找出依赖库中有哪一个Library,重复依赖了同一个版本的Glide,也就是repacked的库,将这个库中的Glide排除掉

相关文章
相关标签/搜索