sunfusheng / GlideImageView

基于Glide V4.9.0封装的图片加载库,可以监听加载图片时的进度
https://github.com/sunfusheng/GlideImageView
1.77k stars 272 forks source link

能不能把 library 中的 ProgressAppGlideModule 类改成继承 LibraryGlideModule #41

Closed flyjiang2014 closed 6 years ago

flyjiang2014 commented 6 years ago

能不能把 library 中的 ProgressAppGlideModule 类改成继承 LibraryGlideModule, 因为 可能使用的时候项目需要配置自己的 GlideModule 类,以下是官方文档的建议

程序库 (Libraries) 程序库如果需要注册定制组件,例如 ModelLoader,可按以下步骤执行: 添加一个或多个 LibraryGlideModule 实现,以注册新的组件。 为每个 LibraryGlideModule 实现,添加 @GlideModule 注解。 添加 Glide 的注解处理器的依赖。 一个 [LibraryGlideModule] 的例子,在 Glide 的OkHttp 集成库 中:

@GlideModule public final class OkHttpLibraryGlideModule extends LibraryGlideModule { @Override public void registerComponents(Context context, Glide glide, Registry registry) { registry.replace(GlideUrl.class, InputStream.class, new OkHttpUrlLoader.Factory()); } } 使用 GlideModule 注解需要使用 Glide 注解的依赖:

compile 'com.github.bumptech.glide:annotations:4.6.1' 避免在程序库中使用 AppGlideModule 程序库一定 不要 包含 AppGlideModule 实现。这么做将会阻止依赖该库的任何应用程序管理它们的依赖,或配置诸如 Glide 缓存大小和位置之类的选项。

此外,如果两个程序库都包含 AppGlideModule,应用程序将无法在同时依赖两个库的情况下通过编译,而不得不在二者之中做出取舍。

这确实意味着程序库将无法使用 Glide 的 generated API,但是使用 RequestOptions 加载仍然有效

sunfusheng commented 6 years ago

因为暂时用generated API的原因,下版本改掉,欢迎体验V2.0.0版本