SAF: App Inventor implementation of Storage Access Framework

Didn’t understand anything :cold_sweat: . why should we use this extension instead file component. What is document tree

That’s not a problem.
You can always google it.

People interested in Storage and Developers working with files will find it useful.

1 Like

I want to know, about it work

I Am Just Shocked How Much Hardwork You Have Done In Making Extension

specially In Creating So Long Post With Proper & A to Z Documentation.

Its Took Me around 10 Sec to scroll to view comments

A Big Salute to you :love_you_gesture: :love_you_gesture: :+1: :+1:

Really You Are Masterpiece

Awesome Extesnions


What an amazing extension! Great job!
You are far ahead of AI2. :wink:
I’ve only done a few tests and it seems to be working so far.


@vknow360 excellent work! thank you very much! :partying_face:
I guess, you also will publish in the App Inventor community soon…

see the overview by @bodymindpower…

everywhere you can see Storage Access Framework you can use it… these are places the file component can’t access… for example to read or write non media files created by other apps …



Thank you :blush:

Already did, waiting for approval.

It will work in Android KitKat and above versions but it is recommended to use SAF on Android 5.0+.

1 Like

can it work in android 11?

Done …
It’s a shame that your extensions need approval in AI2.


We are facing problem with the file component of kodular after the new update of kodular with android 11 phones
I am just creating a file in the external storage and retrieving it from the same place as per the requirement
Does it will solve the issue?

Excellent work :+1: :clap:


starting with SDK30 you should not create arbitrary directories anymore…
use the ASD or shared storage like /Download…
see also the overview by @bodymindpower



Epic work @vknow360 :love_you_gesture:


My app is a offline app, which stores salary statements of the employee. I have included a tab to export the stored data to the phone to provide the user to transfer data to new phone in case the user is changing the phone.
I was storing the file directly to the external storage “/storage/emulated/0/salary”. Now this thing is not working in the new kodular update.
Pl suggest me if i want to use this extension then how to do this.


I dont know how to use this
If you can help. I need to create the file (if possible any where in phone) and save data in that

bruh why you @narender_kumar mention me ? ask from @vknow360 he is the developer of extension

Read the post and show the block what you have tried till now


I was having little bit problem to understand how it works

In .OpenDocumentTree block what I have to add in it

I added this /storage/emulated/0/Android/data path in OpenDocumentTree

When I call the block it show the /storage/emulated/0/

Actually I was trying to access text file in this path /storage/emulated/0/Android/data/com.OtherAppPrivate.Dir/files/text.txt

And trying to modifying it

Why you put the “/storage/0001-61E9” in that block

I am very confused about SAF

SAF can give you access to 90% of the file system.
But you can’t access /Android/data and /Android/obb dir and its childs.

That’s path of sdcard in my phone. :slightly_smiling_face:

Example 2

1 Like

I am understanding the concept.
Can i create folder they way you create document in your example 2
My requirement is to create folder inside the Document folder after giving permission to the Document folder
The file component is not able to create that