1

I'm new in Android programming. I am following a tutorial to learn how to upload an image that I have loaded into an ImageButton to firebase storage.

Notice that I already added firebase dependencies to my app;

I get this permission denial: reading com.android.providers.media.mediadocumentsprovider action_open_document exactly where the upload starts :

final UploadTask uploadTask = myref.child("Articles").child(filename)
.putFile(myUri);

Here is my file chooser:

public void openFileChooser (){
        Intent intent = null;
        if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) {
            intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
        }
        intent.addCategory(Intent.CATEGORY_OPENABLE);
        intent.setType("image/*");
        startActivityForResult(intent, PICK_IMAGE_RESQUEST);
    }

And onActivityResult:

        super.onActivityResult(requestCode, resultCode, data);

       if (requestCode == PICK_IMAGE_RESQUEST && resultCode == RESULT_OK  
        && data != null && data.getData()!=null){  
            myUri = data.getData();  
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {  
                getContentResolver().takePersistableUriPermission(myUri,Intent.FLAG_GRANT_READ_URI_PERMISSION);  
            }  
            filename = getFileName(myUri);  

        }  
    }

The error I got:

java.lang.SecurityException: Permission Denial: reading com.android.providers.media.MediaDocumentsProvider from pid=29526, uid=10133 requires that you obtain access using ACTION_OPEN_DOCUMENT or related APIs
Dafkelot
  • 11
  • 2

0 Answers0