Before gradle update everything worked fine, but later on this error popped up. I have referred to the official documents and it provides the same code. Not accepting the getDownloadUrl() method
I have added the correct dependency which is latest and the gradle sync is successful. app/build.gradle
This is the sample code provided in firebase docs which is same as mine. Firebase Assistant
I'm unable to understand what could possibly go wrong even if all required things are present. Stuck on this since 2 days, please help!
As Doug pointed out, UploadTask.getDownloadUrl()
is deprecated, so use StorageReference.getDownloadUrl().
But StorageReference.getDownloadUrl() returns Task, which must be handled asynchronously, you cannot do Uri downloadUrl = photoRef.getDownloadUrl().getResult();
else you will get java.lang.IllegalStateException: Task is not yet complete
Therefore, handle it asynchronously like this
photoRef.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
Uri downloadUrl = uri;
Toast.makeText(getBaseContext(), "Upload success! URL - " + downloadUrl.toString() , Toast.LENGTH_SHORT).show();
}
});