Glide異常:Failed to find GeneratedAppGlideModule 解決實踐


情況

App采用Glide做加載網絡圖片功能。穩定版本的App,突然有很多圖片無法加載出來,經排查,除了Glide框架已經緩存過的圖片其他圖片都觸發了Glide.onError

異常為

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'

第一個解決方案:

無效

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

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

第二個解決方案

Java寫了CMAppGlideModule這個類后,再對build.gradle的Glide的依賴進行修改

如下:annotationProcessor 改為 kapt

    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排除掉


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM