Interface GlideModule


@Deprecated public interface GlideModule
Deprecated.
Libraries should use LibraryGlideModule and Applications should use AppGlideModule.
An interface allowing lazy configuration of Glide including setting options using GlideBuilder and registering ModelLoaders.

To use this interface:

  1. Implement the GlideModule interface in a class with public visibility, calling Registry.prepend(Class, Class, com.bumptech.glide.load.ResourceDecoder) for each ModelLoader you'd like to register:
                      
                          public class FlickrGlideModule implements GlideModule {
                              @Override
                              public void applyOptions(Context context, GlideBuilder builder) {
                                  builder.setDecodeFormat(DecodeFormat.ALWAYS_ARGB_8888);
                              }
    
                              @Override
                              public void registerComponents(Context context, Glide glide) {
                                  glide.register(Model.class, Data.class, new MyModelLoader());
                              }
                          }
                      
                 
  2. Add your implementation to your list of keeps in your proguard.cfg file:
    
     -keepnames class * com.bumptech.glide.samples.flickr.FlickrGlideModule
     
  3. Add a metadata tag to your AndroidManifest.xml with your GlideModule implementation's fully qualified classname as the key, and GlideModule as the value:
    
     <meta-data
         android:name="com.bumptech.glide.samples.flickr.FlickrGlideModule"
         android:value="GlideModule" />
     

All implementations must be publicly visible and contain only an empty constructor so they can be instantiated via reflection when Glide is lazily initialized.

There is no defined order in which modules are called, so projects should be careful to avoid applying conflicting settings in different modules. If an application depends on libraries that have conflicting modules, the application should consider avoiding the library modules and instead providing their required dependencies in a single application module.

  • Method Summary

    Modifier and Type
    Method
    Description
    void
    applyOptions(Context context, GlideBuilder builder)
    Deprecated.
    Lazily apply options to a GlideBuilder immediately before the Glide singleton is created.
    void
    registerComponents(Context context, Glide glide, Registry registry)
    Deprecated.
    Lazily register components immediately after the Glide singleton is created but before any requests can be started.
  • Method Details

    • registerComponents

      void registerComponents(@NonNull Context context, @NonNull Glide glide, @NonNull Registry registry)
      Deprecated.
      Lazily register components immediately after the Glide singleton is created but before any requests can be started.

      This method will be called once and only once per implementation.

      Parameters:
      context - An Application Context.
      glide - The Glide singleton that is in the process of being initialized.
      registry - An Registry to use to register components.
    • applyOptions

      void applyOptions(@NonNull Context context, @NonNull GlideBuilder builder)
      Deprecated.
      Lazily apply options to a GlideBuilder immediately before the Glide singleton is created.

      This method will be called once and only once per implementation.

      Parameters:
      context - An Application Context.
      builder - The GlideBuilder that will be used to create Glide.