Error 908 WRITE_EXTERNAL_STORAGE permission is denied while uploading file using ftp

hello I had the same problem, the error 908 WRITE_EXTERNAL_STORAGE permission is denied appears in my app.

I has tried to fix it using the "call screen1 ask for permission WRITE_EXTERNAL_STORAGE, but the same error is appearing.

I had used 2 extensions: All file permission extension and STORAGE ACCESS extension both without success.

My app just take some images that are saved in the app ADS folder and the app tryed to upload them to my server using FTP, days ago it works without problem, but now I don´t know why the write error is appearing and I really need to fix it.

can you help me please?

which Android version are you using for your tests?

It would really help if you provided a screenshot of your relevant blocks, so we can see what you are trying to do, and where the problem may be.

To get an image of your blocks, right click in the Blocks Editor and select “Download Blocks as Image”. You might want to use an image editor to crop etc. if required. Then post it here in the community.


the Android version is 14. upgraded last Thursday when the problem starts.
version one UI 6.0
version A546EXXS6BXA2

the problem is to upload a pdf file to my server using FTP component:

other problem should be to upload some images:


the app is reading the file image that is storage in the asd folder application, but the WRITE_EXTERNAL_STORAGE is appearing.

is this enough information?


try this extension

it might be easier to prepare a small test project as simple as possible to test it


thanks a lot for your help, but I had downloaded the extension and tryed it with the same results.

I dont understand what is the difference between this:


and just this:


because in my poor logic the ReadMediaPermission.SDKversion is just reading the version. surely i am not using it in the right way.

the error is still appearing, and is just in the first screen.

i am not using companion, i am creating the apk and test it.

i am not using image picker.

what else do I need to do?

this is a very easy app with just one screen, and the error 908 es appearing.

I had used the extesion but the error is still present.

Login_form.aia (683.9 KB)

your blocks do not make sense…
from the extension thread

Here is a small extension that declares the following permissions on Android 13+ in the Manifest:


and up to Android 12:


Since targetSdkVersion = 33, these new storage permissions are required and requested from Android 13. READ_EXTERNAL_STORAGE no longer exists on Android 13+.

alternatively let me suggest you to use the extension from @bodymindpower to set the correct permissions together with a ftp extension to upload the file, for example App Inventor Extensions: FTP | Pura Vida Apps


if the READ_EXTERNAL_STORAGE is no longer exist in targetSDKVersion = 33 why is appearing in my app, even that I am not requesting for it?

I am not using this blocks in my app:

but the error is still appearing.

I had used the bodymindpower extension in this way:

but this didnt disappear the error, how I need to used it?
or what else I need to do?

Well, there are 1) some bugs in Kodular and also 2)some bugs or misunderstandings in your blocks…

So why are you asking for that permission if it does not exist anymore?

From the extension thread


thanks a lot Taifun,

as I mentioned before I didn´t use this blocks:

just because the app is trigger the error 908_WRITE_EXTERNAL_STORAGE that’s why I had tried to solve this error using those blocks, but the problem persists. and because of that i had tried to use the bodymindpower extension, but this didnt solve the problem neither.

I undestand that kodular has a bug, do you know a solution for this error 908_WRITE_EXTERNAL_STORAGE or what can I do to avoid it? but I still need to upload images and pdf files

hope i had explained my self well.


1 Like

You might want to follow this suggestion and use an