【发布时间】:2020-04-01 23:40:10
【问题描述】:
Uri resultUri = result.getUri();
String current_userID = firebaseUser.getUid();
StorageReference filePath = mImageStorage.child("profile_images").child( current_userID + ".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().getDownloadUrl.toString();
databaseReference.child("image").setValue(downloadUrl).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
mProgressDialog.dismiss();
Toast.makeText(AccountSettings.this, "Success Uploading", Toast.LENGTH_SHORT).show();
}
}
});
} else {
Toast.makeText(AccountSettings.this, "Error in Uploading", Toast.LENGTH_SHORT).show();
mProgressDialog.dismiss();
}
}
});
getDownloadUrl 下没有红线,或者是 downloadUrl 需要添加一个方法
【问题讨论】:
-
我猜你需要写
getDownloadUrl()。你忘了括号()。 -
您无法通过这种方式获取网址。 getDownloadUrl().toString() 不起作用。关注这个answer
-
您必须使用一个非常古老的示例。阅读文档以获取正确的详细信息:firebase.google.com/docs/storage/android/…
标签: java android firebase-storage