如何将 Firebase 生成的网址放入 ImageView with Glide 中?



因此,当我将图片上传到 Firebase 存储时,getDownloadUrl()方法会生成一个字符串,例如:com.google.android.gms.tasks.zzu@275cc4

现在我正在尝试将上传的图像放入ImageView

ImageView img;
img = v.findViewById(R.id.imgView);
Glide.with(getApplicationContext()).load("com.google.android.gms.tasks.zzu@275cc4").into(img);

这似乎没有加载图像。我尝试使用完整的 firebase 网址https://firebasestorage.googleapis.com/v0/.....并且这奏效了,但我似乎找不到在上传图像时生成此网址的方法?

storageRef.child(path).getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
Glide.with(getApplicationContext()).load(uri.toString()).into(img);
}
});

希望这对你有帮助。有好的一天

要解决此问题,您需要将照片的实际网址传递给load()方法。恐怕:

com.google.android.gms.tasks.zzu@275cc4

不是图像的有效网址。因此,请将上述网址更改为格式正确的网址,包括:https://firebasestorage.googleapis.com/v0/....

要验证 url 是否正确,只需在浏览器中复制并粘贴该 url,然后查看它是否打开图像。如果它没有打开,则表示您提供了不正确的网址。

最新更新