Reaching Media Files of Installed App

Hi, this is an awesome community and i can clearly say that topics are answered in a lighting fast and cared in a high level like brotherhood. I am so glad that i am inside this community, i really wish i could Add something rather than always being at “looking for help” side.
I am not native english speaker so sometimes its hard for me to get what is said, even with the translator, (for example i still dont get what is a snippet)
I sincerely want to say that i am spending much time about my concerns before posting a Question. I am not trying to achieve an atomic fusion so i am always sure i will find a topic who had same issue with me but sometimes i cant find it maybe its about “how to search it”

I am sorry for the long entering, i just wanted to point that i show importance to time that people spend here to help other people, i am fully aware of that so if i am asking something it means i just couldn’t find the related topic and i really got headaches of my specific issue. (Or just couldn’t search enough)

I know some superheroes here and they are awesome people and they are productive, i hope i would get some Logical help rather than the Fish itself if you know what i mean therefore i would be able to show a logical approach to my next issue so i can steal less time of people here. So my issue is about the Logic of it rather than “my blocks don’t work”

I did read Anke’s posts about Android App Installation rules; there is Internal and External storage, Android installs the Apps to Internal one and also creates another file in External storage as i could understand.
If phone is rooted then we can reach the files in Internal storage also (i dont think i need that). I dont know why an app has 2 different Places (Directories?) to keep its files. So since you figured out that my issue is about reaching files of an installed app, here are my concerns ;

-i want to be able to manually update media files in my app to see the effects for different display sizes and aspect ratios( i guess 3 different Stuff are involved on a screen; vertical and horizontal pixel count on screen, PPI number and actual size in inches diagonally) so to achieve this i need to dig into files of the installed app in External storage (i guess they are in external storage) so i can delete a media file and exchange it with another media file in exact same name) so when i press same button in app, different media will be shown.

-Since App Inventor has a limit on size of media files; no more than 5Mb video files are allowed/possible. So thats also the reason why i need a way to reach media files of app to change and even Add. My logical approach is to put all the necessary blocks for those media files like i will call videos and pictures via their names but there wont be any files in app assets but just calling them like;

When start.button pressed;
Call VideoPlayer.start “video1.mp4”
( i know you are laughing at this, me too )

So i want to build the app with the related blocks about calling media like video and pictures but without media files because they are larger than 5Mb in total.

Up there 2 sections are my purposes and the logic i could think of. To achieve this i need to reach the media files folder manually,

-Can i do that, can i manually reach and manipulate the files in media files folder??

-If i can do that, so since i already wrote a specific path for those files in blocks to call them but i still dont know where to call them, in samsung, xiaomi etc phone, directory addresses change, most of them start with
emulated/0/appname
Something like this, i dont know what to write when we call a file.
For example when i call a picture for the Image block, i am writing just directly the name of that jpg file in a text block. So i dont write any “//“ before the name of it. My rotten logic says to me if i can call this picture directly with its name without any slashes so it means this picture’s directory is very close the ummm the heart of the app :wink: or to the file who runs these codes.
But the directories for files are always written like
emulated/0/ etc..
So am i missing something?

I did read about Taifun’s extension, it sounded me like thats what i need but at the bottom of the page it says;
Note: Starting with the SDK30 release most of the methods and events of this extension will still work, except copying files to the external storage (outside the ASD or one of the Shared folders) on devices with Android >= 11,

So there is something that doesnt work on Copying files to External storage. And i dont know if that is blocking what i am trying to do.

Sorry for that time consuming post but since there is no stupid question, so i posted that.

Edit;
I installed Android Studio to use emulator for different screen sizes, it works,but when i opened that software i got scared that what i did put myself into. I imported my unfinished app as Apk and actually i could see everything there(my media files). For 100ms i thought i can copy an 8Mb video from my desktop and paste it into media files folder and pack/build the app again but it didnt work(i couldn’t do it) i felt like Android Studio telling me

“dude.. it doesn’t work that way :)) but hey you made my day, that was funny :slight_smile:

the media files aka assets are read only
but you can have your files in the ASD - applicaition specific directory and modify them there... you also can download files from the internet into the ASD

to do file operations just use the file component... (usually) there is no extension necessary...

just search the community for a specific problem and learn from the examples which are already there... try something and if you get stuck, post a screenshot of your relevant blocks

Taifun

1 Like

About snippets, reusable code parts.. ok. I saw it but wiki was a thing. Thank you. ( i wonder if Arduino IDE has built in snippets because i use For Loops much. Thanks for the definition link.

I ve heard about “read only” term. Its sad that blocks what i want to do but surely android engineers made it like this on purpose like, security i guess.

I will search on ASD and File component usage.

Thanks Taifun

Hi Taifun, i guess there is something i couldn’t get, File component doesn’t work with videos, it works with txt only.
But then İ imported your extension for ASD.
Basically i created and ASD just in case as you mentioned, then I manually pasted video into /files
And the path for the video is already in blocks. I added a lable to check ASD address. But i get an error, its interesting to me because ASD address and the address in error are same so i couldn’t compromise whats wrong. I even closed app after asd is created and tried again because i dont know how fast is asd created since calling the asd address to label is right after the creation but result is same.
Sorry, address in the Label is white color, a lil hard to read on cyan color.

Btw i must tell that i am testing this in Android Studio’s Emulator.


Don't do that
Download your files from the internet into ASD
Use for example

Taifun

1 Like

I guessed so too, but your confirmation was the thing for it. So i will need to also add some blocks first to check if there are downloaded files so it wont download them everytime the app is launched. Thanks Taifun.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.