Android 如何从firebase获取url图像并将其保存为字符串?

Android 如何从firebase获取url图像并将其保存为字符串?,android,Android,如何从以下位置获取字符串url: StorageReference file_path = mStorageReference.child("Posts_images") .child(currentUser + ".jpg"); file_path.putFile(pickedImageUri).addOnCompleteListener(new OnCompleteListener <UploadTask.TaskSnapshot>() { @Override

如何从以下位置获取字符串url:

StorageReference file_path = mStorageReference.child("Posts_images")
    .child(currentUser + ".jpg");
file_path.putFile(pickedImageUri).addOnCompleteListener(new OnCompleteListener <UploadTask.TaskSnapshot>() {
    @Override
    public void onComplete(@NonNull Task<UploadTask.TaskSnapshot> task) {
        if (task.isSuccessful()) {
            //
            String msg = getString(R.string.imageUploadSuccessfully);
            Toast.makeText(AddPost_Activity.this, msg, Toast.LENGTH_SHORT).show();
            finish();
        }
StorageReference file\u path=mStorageReference.child(“Posts\u图像”)
.child(当前用户+“.jpg”);
file_path.putFile(pickedImageUri).addOnCompleteListener(新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
if(task.issusccessful()){
//
String msg=getString(R.String.imageUploadSuccessfully);
Toast.makeText(AddPost_Activity.this、msg、Toast.LENGTH_SHORT).show();
完成();
}

在任务成功的if语句中,您可以获得如下下载URL:

if (task.isSuccessful()) {

 String msg = getString(R.string.imageUploadSuccessfully);
 Toast.makeText(AddPost_Activity.this, msg, Toast.LENGTH_SHORT).show();

 file_path.getDownloadUrl().addOnSuccessListener(new 
    OnSuccessListener<Uri>() {
        @Override
        public void onSuccess(Uri uri) {
            String url = uri.toString();
            //do stuff
        }
    }).addOnFailureListener(new OnFailureListener() {
        @Override
        public void onFailure(@NonNull Exception exception) {
    // Handle any errors
        }
    });

}
if(task.issusccessful()){
String msg=getString(R.String.imageUploadSuccessfully);
Toast.makeText(AddPost_Activity.this、msg、Toast.LENGTH_SHORT).show();
文件\u path.getDownloadUrl().addOnSuccessListener(新
OnSuccessListener(){
@凌驾
成功时的公共无效(Uri){
字符串url=uri.toString();
//做事
}
}).addOnFailureListener(新的OnFailureListener(){
@凌驾
public void onFailure(@NonNull异常){
//处理任何错误
}
});
}
有关详细信息的文档

您需要使用此

 .addOnCompleteListener(new OnCompleteListener<Uri>() {
    @Override
    public void onComplete(@NonNull Task<Uri> task) {
        if (task.isSuccessful()) {
            Uri downloadUri = task.getResult();
            if (downloadUri != null) {
                String photoStringUrl = downloadUri.toString();
            }
        }
    }
});
.addOnCompleteListener(新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
if(task.issusccessful()){
Uri downloadUri=task.getResult();
if(downloadUri!=null){
字符串photoString=downloadUri.toString();
}
}
}
});

我使用.addOnCompleteListener??我不确定你的意思。你应该使用.onSuccess listener或getDownloadUrl()。。