android - 如何在 Android Studio 中使用 Firebase 保存图像的 URL
问题描述
我正在尝试使用以下方法保存图像的 URL:
StorageReference filePath = imageStorage.child("profile_images").child(currentUserID + ".jpg");
filePath.putFile(resultUri).addOnCompleteListener(new OnCompleteListener<UploadTask.TaskSnapshot>() {
@Override
public void onComplete(@NonNull Task<UploadTask.TaskSnapshot> task) {
if(task.isSuccessful())
{
String downloadURL = task.getResult().getStorage().getDownloadUrl().toString();
userDataBase.child("image").setValue(downloadURL).addOnSuccessListener(new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid) {
progressDialog.dismiss();
}
});
}
else
{
progressDialog.dismiss();
Toast.makeText(SettingsActivity.this, "Error Uploading",Toast.LENGTH_SHORT).show();
}
}
});
}
String downloadURL = task.getResult().getStorage().getPath();
userDataBase.child("image").setValue(downloadURL).addOnSuccessListener(new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid) {
progressDialog.dismiss();
}
});
}
else
{
progressDialog.dismiss();
Toast.makeText(SettingsActivity.this, "Error Uploading",Toast.LENGTH_SHORT).show();
}
}
});
我在 Android Studio 中使用 Firebase API。我要做的是由用户上传图像并将 URL 保存到数据库中,以便稍后我可以从那里检索它。但是 getDownloadUrl() 方法不返回 URL,而是返回这个字符串:
com.google.android.gms.tasks.zzu@302097b
解决方案
推荐阅读
- multithreading - 将实例调用到同一线程内的线程
- plotly - Python Plotly 中未出现在 Sankey 中的节点标签
- c# - 将 Json 数组作为字符串数组访问
- java - 比较二维数组元素
- flutter - 如何在我的颤振应用中添加多个带有视频的 youtube 播放列表?
- c - 我如何使用超过 100.000 点?
- java - 参数化方法有什么问题?
- javascript - 在不知道父元素的情况下从 DOM 添加/删除元素时的事件
- python - 当.join不允许时,如何在字符串Python中添加逗号
- airflow - 气流 on_failure_callback