如何使用Glide将Firebase生成的URL放入ImageView?

时间:2018-10-04 16:47:16

标签: java android firebase firebase-storage android-glide

因此,当我将图像上传到Firebase Storage时,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 URL https://firebasestorage.googleapis.com/v0/.....并成功了,但是在上载图片时似乎找不到找到生成该方法的方法?

2 个答案:

答案 0 :(得分:1)

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

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

不是图片的有效网址。因此,请使用正确的格式更改以上网址,其中包括:https://firebasestorage.googleapis.com/v0/...

要验证网址是否正确,只需将该网址复制并粘贴到浏览器中,看看它是否打开了图片。如果未打开,则表示您提供了错误的网址。

答案 1 :(得分:1)

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

希望这对您有帮助。......祝您有愉快的一天