首页 > 解决方案 > Android firebase getDownloadUrl(); 无法解析符号

问题描述

你能帮我解决这个错误吗?getDownloadUrl(); 表示无法解析 getDownloadUrl() 的符号变量。我知道 getDownloadUrl(); 已被弃用,我尝试阅读更新的文档,但我对此有点陌生,我不明白如何在不破坏一切的情况下编辑我的代码。

        if (requestCode == CropImage.CROP_IMAGE_ACTIVITY_REQUEST_CODE) {
            CropImage.ActivityResult result = CropImage.getActivityResult(data);
            if (resultCode == RESULT_OK) {

                final Uri resultUri = result.getUri();
                String user_id=mAuth.getCurrentUser().getUid();
                final StorageReference filepath=storageProfileImageRef.child(user_id + ".jpg");

                filepath.putFile(resultUri).addOnCompleteListener(new OnCompleteListener<UploadTask.TaskSnapshot>() {
                    @Override
                    public void onComplete(@NonNull Task<UploadTask.TaskSnapshot> task) {
                        if(task.isSuccessful()){
                           String downloadUri = task.getResult().getdownloadUrl.toString();



                            Toast.makeText(SETTINGSACTIVITYSCREEN.this, "saving profile image to database", Toast.LENGTH_SHORT).show();




                            getUserDataBaseRefrence.child("user_image").setValue(downloadUri).addOnCompleteListener(new OnCompleteListener<Void>() {
                                @Override
                                public void onComplete(@NonNull Task<Void> task) {
                                    Toast.makeText(SETTINGSACTIVITYSCREEN.this, "image uplaod success", Toast.LENGTH_SHORT).show();

                                }
                            });

                        }
                        else{
                            Toast.makeText(SETTINGSACTIVITYSCREEN.this, "error", Toast.LENGTH_SHORT).show();
                        }
                    }
                });
            } else if (resultCode == CropImage.CROP_IMAGE_ACTIVITY_RESULT_ERROR_CODE) {
                Exception error = result.getError();
            }
        }
    }
}

标签: javaandroid

解决方案


getDownloadUrl不复存在。

如果它适合您,请查看下面的代码。

final StorageReference ref = storageRef.child("images/mountains.jpg");
uploadTask = ref.putFile(file);

Task<Uri> urlTask = uploadTask.continueWithTask(new Continuation<UploadTask.TaskSnapshot, Task<Uri>>() {
    @Override
    public Task<Uri> then(@NonNull Task<UploadTask.TaskSnapshot> task) throws Exception {
        if (!task.isSuccessful()) {
            throw task.getException();
        }

        // Continue with the task to get the download URL
        return ref.getDownloadUrl();
    }
}).addOnCompleteListener(new OnCompleteListener<Uri>() {
    @Override
    public void onComplete(@NonNull Task<Uri> task) {
        if (task.isSuccessful()) {
            Uri downloadUri = task.getResult();
        } else {
            // Handle failures
            // ...
        }
    }
});

推荐阅读