因此,当我将图片上传到 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,然后查看它是否打开图像。如果它没有打开,则表示您提供了不正确的网址。