从 Firebase 存储加载图像但使用 Glide 时出错
Load image from Firebase storage but got an error using Glide
我正在尝试从 Firebase 存储加载 png 图像,但我遇到了一件奇怪的事情。我正在将此 dependency 用于我的项目
implementation 'com.firebaseui:firebase-ui-storage:3.2.2'
我的项目有 FirebaseRecyclerAdapter 从 Firebase 数据库查看列表
请看一下这段代码。
@Override
protected void onBindViewHolder(@NonNull holder holder, int position, @NonNull List model) {
// other code that not needed to post
// Reference to an image file in Cloud Storage
StorageReference storageReference = FirebaseStorage.getInstance().getReference().child("thumbnails/Untitled.png");
Glide.with(context)
.using(new FirebaseImageLoader()) //"using()" got a red color
.load(storageReference)
.into(imageView);
}
最奇怪的是为什么我在那个区域得到了红色? (使用方法)说
Cannot resolve method
'using(com.firebase.ui.storage.images.FirebaseImageLoader)'
我一直在 google 搜索那个问题,但运气不好,没有任何问题与我的问题相同。
如果我删除这个
.using(new FirebaseImageLoader())
并尝试 运行 应用程序它不会从 firebase 存储加载图像并且我有一个 logcat 错误
E/GlideExecutor: Request threw uncaught throwable
com.bumptech.glide.Registry$NoModelLoaderAvailableException: Failed to find any ModelLoaders for model: gs://sdakaraoke.appspot.com/thumbnails/Untitled.png
at com.bumptech.glide.Registry.getModelLoaders(Registry.java:584)
at com.bumptech.glide.load.engine.DecodeHelper.getLoadData(DecodeHelper.java:205)
at com.bumptech.glide.load.engine.DecodeHelper.getCacheKeys(DecodeHelper.java:223)
at com.bumptech.glide.load.engine.ResourceCacheGenerator.startNext(ResourceCacheGenerator.java:42)
at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:299)
at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:266)
at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:230)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1115)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:590)
at java.lang.Thread.run(Thread.java:818)
at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory.run(GlideExecutor.java:446)
将 'com.firebaseui:firebase-ui-storage:' 从 0.6.0 更改为 3.2.2
我正在尝试从 Firebase 存储加载 png 图像,但我遇到了一件奇怪的事情。我正在将此 dependency 用于我的项目
implementation 'com.firebaseui:firebase-ui-storage:3.2.2'
我的项目有 FirebaseRecyclerAdapter 从 Firebase 数据库查看列表
请看一下这段代码。
@Override
protected void onBindViewHolder(@NonNull holder holder, int position, @NonNull List model) {
// other code that not needed to post
// Reference to an image file in Cloud Storage
StorageReference storageReference = FirebaseStorage.getInstance().getReference().child("thumbnails/Untitled.png");
Glide.with(context)
.using(new FirebaseImageLoader()) //"using()" got a red color
.load(storageReference)
.into(imageView);
}
最奇怪的是为什么我在那个区域得到了红色? (使用方法)说
Cannot resolve method 'using(com.firebase.ui.storage.images.FirebaseImageLoader)'
我一直在 google 搜索那个问题,但运气不好,没有任何问题与我的问题相同。
如果我删除这个
.using(new FirebaseImageLoader())
并尝试 运行 应用程序它不会从 firebase 存储加载图像并且我有一个 logcat 错误
E/GlideExecutor: Request threw uncaught throwable
com.bumptech.glide.Registry$NoModelLoaderAvailableException: Failed to find any ModelLoaders for model: gs://sdakaraoke.appspot.com/thumbnails/Untitled.png
at com.bumptech.glide.Registry.getModelLoaders(Registry.java:584)
at com.bumptech.glide.load.engine.DecodeHelper.getLoadData(DecodeHelper.java:205)
at com.bumptech.glide.load.engine.DecodeHelper.getCacheKeys(DecodeHelper.java:223)
at com.bumptech.glide.load.engine.ResourceCacheGenerator.startNext(ResourceCacheGenerator.java:42)
at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:299)
at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:266)
at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:230)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1115)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:590)
at java.lang.Thread.run(Thread.java:818)
at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory.run(GlideExecutor.java:446)
将 'com.firebaseui:firebase-ui-storage:' 从 0.6.0 更改为 3.2.2