Android - Firebase - TaskSnapshot - Method should only be accessed within private scope?

后端 未结 3 1362
忘掉有多难
忘掉有多难 2020-12-07 20:43

Everything was working great... until I came back to work from a 3 month break and updated my Firebase from 9.8 to 10.0.1

Now all of my calls to TaskSnapshot

相关标签:
3条回答
  • 2020-12-07 21:03

    The problem seems to be caused by an overzealous Lint check. Try something like this:

    @SuppressWarnings("VisibleForTests") Uri downloadUrl = taskSnapshot.getDownloadUrl();
    

    This trick worked for me. If the problem's related to this bug report, then it should be fixed in 2.4.

    0 讨论(0)
  • 2020-12-07 21:11

    I had the same problem and it was gone when I have updated my Firebase version. I was using 10.0.1 and now I am using 11.0.0

    0 讨论(0)
  • 2020-12-07 21:13

    I was stuck in the same issue and suppressWarnings didn't work for me. To get the complete download Uri i used the following code:

    ref.putFile(imagePath).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
            @Override
            public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
                ref.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
                    @Override
                    public void onSuccess(Uri uri) {
                         Log.d("URL", uri.toString());
                        // This is the complete uri, you can store it to realtime database
                    }
                });
            }
        });
    

    Hope this helps someone.

    0 讨论(0)
提交回复
热议问题