⏹ StorageAccess Extension: Simplifying Storage Permissions in MIT App Inventor

I didn't see the video earlier.
If you are not able to access files even after using SAF Picker then you have done something incorrectly in your blocks.

Regarding SAF, here it is

This extesnion does not directly deal with the Storage Access Framework (SAF). Instead, it focuses on managing storage permissions and retrieving the grant access status.

I think you should be more specific about your words.

If you are using SAF then there is no need to ask for MANAGE_EXTERNAL_STORAGE permission, but in the preview video you have shown that you were unable to upload file without this permission. How is that even possible?
It all seems so confusing to me.

Google Play will also reject your app with this permission (most of the time).

in the video, I used a device with Android 11 (SDK30) so I had to request access to get non-media files (like PDF)

You can get access to all type of files with SAF. See preview video of this extension:

You are correct, I know this,
Cause Google’s policy requires that apps justify the need for this permission and demonstrate core functionality that requires such broad access to manage all files. Without a legitimate need for this permission, apps may be rejected from the Google Play Store.

in the video, I could upload images, videos, or even Audio files by default before requesting access

but if I decided to pick any other file types I had to request this permission .

Which extension did you use to pick files?

I use Activity starter

Use SAF and you will find that you can access all documents without any need of permission.

do you mean SAF Picker :point_down: ?

Yes.

Ok I will definitely give it a try thanks @vknow360

Yes, this will only confuse most users and everything has already been explained in detail in this guide:

4 Likes

Hello, I stumbled upon this post created by you nine months ago. Thanks to your extension, I managed to complete my app. However, I still have some issues, and I kindly ask if you could please send me the AIA file of the video so that I can better understand the functioning or the logic of your extension. Let me explain further, I am currently unable to find the logic "if the permissions are granted, then do". Best regards.

This block returns true when successfully granted and false for counter.

Hi Black_Knight, thanks for the answer, but i can t see the block that you mentioned.

I presume it is this one:

See first post

Timai2, this is the block tha i am actualy using. I am sure that imake something wrong.

and this block to grand storage acess