代码之家  ›  专栏  ›  技术社区  ›  Anthony

Glide 4-ModelLoader上下文

  •  2
  • Anthony  · 技术社区  · 6 年前

    我们如何获得 context 到自定义 ModelLoader 在Glide 4中?我们不应该存储 上下文 ModelLoaderFactory

    注册表需要工厂:

    public void registerComponents(@NonNull Context context, @NonNull Glide glide, Registry registry) {
        registry.append(MetadataTest.class, InputStream.class, new RawModelLoaderFactory(context));
    }
    

    build 无法获取上下文:

    public ModelLoader<MetadataTest, InputStream> build(@NonNull MultiModelLoaderFactory multiFactory) {
        return new RawModelLoader(context);
    }
    

    所以在 模型加载器 创建:

    RawModelLoader(context)
                     ^^^ How would we get this?
    

    文件中明确提到存储 上下文 在a中 模型加载器 ModelLoaderFactory ,但我看不出一个没有另一个怎么可能。我之所以需要 上下文 是给被遗弃的肮脏的上帝萨夫的。

    1 回复  |  直到 6 年前
        1
  •  0
  •   Anthony    6 年前

    由于Glide会在应用程序的整个生命周期中持续存在,因此可以使用 applicationContext

    https://github.com/bumptech/glide/issues/3061