Failed to find GeneratedAppGlideModule...(bug0)

错误日志

GeneratedAppGlideModule
使用glide加载图片出现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异常警告。

配置

    api 'com.github.bumptech.glide:glide:4.11.0'
    annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'

module使用Glide版本为4.11.0。

解决方案

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

/**
 * Created by ... on ...
 * Description: ...
 */
@GlideModule
public class MAppGlideModule extends AppGlideModule {

}

创建MAppGlideModule继承AppGlideModule,并添加注解@GlideModule即可解决上述问题。

选修

当应用程序和其module依赖了同一module中的Glide,需要在MAppGlideModule中重写isManifestParsingEnabled方法并返回false:

    @Override
    public boolean isManifestParsingEnabled() {
        return false;
    }

如果想实现自己需要的配置可以在MAppGlideModule中重写applyOptions:

   @Override
    public void applyOptions(@NonNull Context context, @NonNull GlideBuilder builder) {
        ...;
    }

通过GlideBuilder实现自定义配置:

public final class GlideBuilder {
  private final Map<Class<?>, TransitionOptions<?, ?>> defaultTransitionOptions = new ArrayMap<>();
  private Engine engine;
  private BitmapPool bitmapPool;
  private ArrayPool arrayPool;
  private MemoryCache memoryCache;
  private GlideExecutor sourceExecutor;
  private GlideExecutor diskCacheExecutor;
  private DiskCache.Factory diskCacheFactory;
  private MemorySizeCalculator memorySizeCalculator;
  private ConnectivityMonitorFactory connectivityMonitorFactory;
  private int logLevel = Log.INFO;
  private RequestOptionsFactory defaultRequestOptionsFactory =
      new RequestOptionsFactory() {
        @NonNull
        @Override
        public RequestOptions build() {
          return new RequestOptions();
        }
      };
  @Nullable private RequestManagerFactory requestManagerFactory;
  private GlideExecutor animationExecutor;
  private boolean isActiveResourceRetentionAllowed;
  @Nullable private List<RequestListener<Object>> defaultRequestListeners;
  private boolean isLoggingRequestOriginsEnabled;
  private boolean isImageDecoderEnabledForBitmaps;
  ...
  }

自定义的配置包括缓存,线程等等,开发者可根据实际需要自定义。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值