【问题标题】:I am facing the error: cannot find symbol method getDownloadUrl() [duplicate]我面临错误:找不到符号方法 getDownloadUrl() [重复]
【发布时间】:2020-02-08 17:56:57
【问题描述】:

请帮我解决问题。这是行:

String thumb_download_url=thumb_task.getResult().getDownloadUrl().toString();

代码如下:

StorageReference 文件路径=mStorageReference.child("profile_image").child(uid+".jpg"); final StorageReference thumb_file_path=mStorageReference.child("profile_image").child("thumbs").child(uid+".jpg");

//------STORING IMAGE IN FIREBASE STORAGE--------
            filepath.putFile(resultUri).addOnCompleteListener(new OnCompleteListener<UploadTask.TaskSnapshot>() {
    @Override
    public void onComplete(@NonNull Task<UploadTask.TaskSnapshot> task) {

        if(task.isSuccessful()){

            @SuppressWarnings("VisibleForTests")
            final String downloadUrl=  task.getResult().getDownloadUrl().toString();
            UploadTask uploadTask = thumb_file_path.putBytes(thumb_bytes);

            //---------- STORING THUMB IMAGE INTO STORAGE REFERENCE --------
            uploadTask.addOnCompleteListener(new OnCompleteListener<UploadTask.TaskSnapshot>() {
                @Override
                public void onComplete(@NonNull Task<UploadTask.TaskSnapshot> thumb_task) {
                    @SuppressWarnings("VisibleForTests")
                    String thumb_download_url=thumb_task.getResult().getDownloadUrl().toString();
                    if(thumb_task.isSuccessful()){
                        Map update_HashMap=new HashMap();
                        update_HashMap.put("image",downloadUrl);
                        update_HashMap.put("thumb_image",thumb_download_url);

                        //--------ADDING URL INTO DATABASE REFERENCE--------
                        mDatabaseReference.updateChildren(update_HashMap).addOnCompleteListener(new OnCompleteListener<Void>() {
                            @Override
                            public void onComplete(@NonNull Task<Void> task) {

                                if(task.isSuccessful()){
                                    mProgressDialog.dismiss();
                                    Toast.makeText(SettingActivity.this, "Uploaded Successfuly...", Toast.LENGTH_SHORT).show();

                                }
                                else{
                                    mProgressDialog.dismiss();
                                    Toast.makeText(getApplicationContext(), " Image is not uploading...", Toast.LENGTH_SHORT).show();

                                }

                            }
                        });

                    }
                    else{
                        mProgressDialog.dismiss();
                        Toast.makeText(getApplicationContext(), " Error in uploading Thumbnail..", Toast.LENGTH_SHORT).show();
                    }
                }
            });

【问题讨论】:

    标签: java android firebase google-cloud-firestore firebase-storage


    【解决方案1】:

    您在 Android Studio 中收到以下错误:

    找不到符号方法getDownloadUrl()

    因为当您在 thumb_task 对象上调用 getResult() 方法时,返回的对象类型是 UploadTask.TaskSnapshot 并且您可以看到此类中没有 getDownloadUrl() 方法,因此出现错误。要以正确的方式获取下载网址,请查看我在以下帖子中的回答:

    【讨论】:

    • 嗨乌萨马!我可以帮助您了解其他信息吗?如果您认为我的回答对您有所帮助,请考虑通过单击左侧投票箭头下方的复选标记(✔️)来接受它。应将颜色更改为绿色。我真的很感激。谢谢!
    猜你喜欢
    • 2018-11-08
    • 1970-01-01
    • 1970-01-01
    • 2020-11-13
    • 2018-11-06
    • 1970-01-01
    • 1970-01-01
    • 2018-01-23
    • 2016-11-10
    相关资源
    最近更新 更多