使用Glide不能正常加载图片问题解决

背景

最近做新项目,我使用Glide读取本地文件加载到ImageView时,发现不能正常加载,并且我从日志看到如下信息

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

坑爹的是它仅是一个info级别的log,不认真看日志还不一定能发现有报错,不知道官方怎么想的.
有一点需要说明,该项目是纯kotlin编写的(有看文章说跟使用kotlin有关系)

附上代码中调用方式

        Glide.with(context)
            .load(item?.imgFilePath)
            .into(holder.binding.ivPresetImg)

解决

看到有人说写一个类继承AppGlideModule,这个方法官方文档也有提及,但是实践证明没有用

后来又尝试了另一种方法

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

特别是第二行,最开始用

annotationProcessor 'com.github.bumptech.glide:compiler:4.16.0'

方式,发现没有效果,然后用

kapt 'com.github.bumptech.glide:compiler:4.16.0' 

sync的时候报错kapt不识别,需在项目最外层增加kotlin-kapt配置才能正常编译

plugins {
    id 'com.android.application'
    id 'org.jetbrains.kotlin.android'
    id 'kotlin-kapt' //增加的配置
}

正常编译后覆盖安装,还是不行,然后clean build后重新编译,还是不行,看到网上有人说需要卸载旧的apk,尝试了一下,果然就可以了
总结

  1. com.github.bumptech.glide:compiler:4.16.0不可少,我最开始只导入了com.github.bumptech.glide:glide:4.16.0
  2. 使用kapt配置注解器,kapt的语法支持需要配合'kotlin-kapt'
  3. 配置后需要clean build清理缓存,然后再build,同时需要卸载旧的apk再安装才能生效
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容