Android makes a mess of your SD card - Android General

One thing that really annoys me is how Android allows apps to litter your internal and external storage cards with files and folders, and these do not get removed when the app is uninstalled. I have literally scores of folders on my device, and half of them I don't have a clue what they are.
I wish when an app was removed Android gave you the option to delete all associated files wherever they may be, and if you say "Yes" then it would enforce that by deleting everything to do with that app.

That would require that app developers stick to some kind of standard, like keeping a configuration file with the location(s) of all its files, on both internal and external memory. While that's certainly doable, it's just as easy for those same developers to code their apps cleanly to remove their own junk. If devs are being sloppy, they're gonna be sloppy either way.
Something big would have to change in Android, since currently apps either have access to the SD or they don't. They would have to introduce a new type of permission which would only allow access to a certain subfolder, whose name is automatically assigned by the OS. Then, apps with that permission would necessarily have to drop all their files in that one place, and identification of residual files would be much easier.

Kind of like this
setspeed said:
One thing that really annoys me is how Android allows apps to litter your internal and external storage cards with files and folders, and these do not get removed when the app is uninstalled. I have literally scores of folders on my device, and half of them I don't have a clue what they are.
I wish when an app was removed Android gave you the option to delete all associated files wherever they may be, and if you say "Yes" then it would enforce that by deleting everything to do with that app.
Click to expand...
Click to collapse
I kind of like it this way. It gives me an excuse to root in there and clean it up.
--El

Related

[Q] Android SD Navigation - How does this thing work?

My SD (the one on the Android, not the SD Card, why the hell did they name it SD?!) is full of junk. In fact, it comes with a load of junk by default.
How do I:
1. Get Android to not pull videos, pictures, and music from games? My gallery, video player, doubletwist, etc is full of stuff like that.
2. Know what I can delete and what I can't? I'd like to clean this place up.
3. How do I find stuff? I mean, is it up to me to make "Music" "Pictures" "Videos" folders for my own sake, and Android just looks everywhere and grabs it?
4. How do I go to my SD Card? In fact, I am 100% sure my SD card has two auto-assigned folders on it and nothing else. I have no idea how to access it or put things on it, and I am also sure my phone does not care that it exists. Obviously my phone's SD has plenty of memory on it, but I don't know why there is even a SD card slot. I was thinking of copying some files onto my SD card to put onto my friend's Android phone, but I am also positive I'd have no idea how to perform what should be a basic task.
So, help me out. What am I doing? And, what apps would I need for question four, or just file browsing apps in general.
I'm confused about what this topic is about.
All the words that would describe what he is talking about are replaced with junk and stuff.
.___.
edit: The captivate assigns the internal sd card as SD:
Delete the "junk"
thehyecircus said:
My SD (the one on the Android, not the SD Card, why the hell did they name it SD?!) is full of junk. In fact, it comes with a load of junk by default.
How do I:
1. Get Android to not pull videos, pictures, and music from games? My gallery, video player, doubletwist, etc is full of stuff like that.
2. Know what I can delete and what I can't? I'd like to clean this place up.
3. How do I find stuff? I mean, is it up to me to make "Music" "Pictures" "Videos" folders for my own sake, and Android just looks everywhere and grabs it?
4. How do I go to my SD Card? In fact, I am 100% sure my SD card has two auto-assigned folders on it and nothing else. I have no idea how to access it or put things on it, and I am also sure my phone does not care that it exists. Obviously my phone's SD has plenty of memory on it, but I don't know why there is even a SD card slot. I was thinking of copying some files onto my SD card to put onto my friend's Android phone, but I am also positive I'd have no idea how to perform what should be a basic task.
So, help me out. What am I doing? And, what apps would I need for question four, or just file browsing apps in general.
Click to expand...
Click to collapse
A search would have answered your questions. your SD card memory is the phones main programs memory. IT is where alot of your apps store the data. You can use many apps to as a file explorer it even comes with one. Its called My Files. I use Root Explorer which allows to access Root files and make changes to them. The sd card slot is for....wait for it.......More memory. As for it not seeing the files. there are a few music apps that let you set the folders it scans. Power Amp is the best at the moment IMHO. You can also put a file in the folders that you dont want scanned named no media, (with root explorer you can copy one of these files from the root folders if you can make one.)
with pre existing folders (for apps and such)
create a "new file" in it named " .nomedia " with the . (preriod)
this can be done with root explorer or in windows. create blank text document rename to .nomedia with NO .txt then copy and move to folders.
nothing in that folder or sub folder will be included in media scans
or if it is a personal folder you are creating name it starting with a . (period)
and ya internal SD gets messy. Use external for your files to keep organized!
Wouldn't my SD card (even if it is SDHC) be slower? DoubleTwist is already inexcusably slow with my files on the SD itself, what would it be like on the external?
And yes, I know what the SD is, I was just asking why it was named that.
Bumping this because I am curious about any speed differences, and because I would like my SD Card to matter.

Should Android contain its own "Program Files"?

I am amazed at Android's rather foolish decisions. From notifications always interrupting music playback, to the odd bugs I encounter "see my messaging topic on Samsung Captivate general", to this one. Apps do not have a default location setting. They all can locate themselves wherever they want. So, your Android SD (oh yeah, another foolish choice, calling the phone's memory SD. Then, your SD Card gets to be "External SD". Totally unnecessary of Google. I mean, the app "App2SD" doesn't make any Android sense. It should say "App2ExternalSD". Anyway, where was I?)
So, your Android SD is filled with random, unimportant for root level folders. Your DCIM is located right next to a bunch of random folders! Why is there not a "Program Files" option for Android, where Google FORCES these folders into a subfolder group, so that you can not only locate them easier, but they are not cluttering up your SD.
So, do you guys think is this a good idea? And if so, where can I go to have this heard by Android devs?
thehyecircus said:
Apps do not have a default location setting.
Click to expand...
Click to collapse
They have: /data/data/<package_name>/. This is main directory for app data or "program files" as you call it.
thehyecircus said:
Why is there not a "Program Files" option for Android, where Google FORCES these folders into a subfolder group
Click to expand...
Click to collapse
Because this isn't an iPhone. If you want to force developers to use only right way of storing files on SD, then go for devices from Apple.
SD card is a general, unmanaged medium for storing files, so it shouldn't force anything. Of course it's better to have clean directory structure and this is why Google and some other developers use /sdcard/Android/<package_name>/ dir for their files.
If some app doesn't use above scheme, then you could write a comment or rate it low - this is the way of openness.
thehyecircus said:
oh yeah, another foolish choice, calling the phone's memory SD. Then, your SD Card gets to be "External SD". Totally unnecessary of Google. I mean, the app "App2SD" doesn't make any Android sense. It should say "App2ExternalSD"
Click to expand...
Click to collapse
Err... who does call internal memory SD? For me SD was always just SD, and internal memory is internal memory, flash memory, system and data partitions, etc. As you have noticed there is apps2SD, not apps2ExternalSD, because everybody calls SD just SD. So what's your problem?
thehyecircus said:
I am amazed at Android's rather foolish decisions. From notifications always interrupting music playback, to the odd bugs I encounter "see my messaging topic on Samsung Captivate general", to this one. Apps do not have a default location setting. They all can locate themselves wherever they want. So, your Android SD (oh yeah, another foolish choice, calling the phone's memory SD. Then, your SD Card gets to be "External SD". Totally unnecessary of Google. I mean, the app "App2SD" doesn't make any Android sense. It should say "App2ExternalSD". Anyway, where was I?)
So, your Android SD is filled with random, unimportant for root level folders. Your DCIM is located right next to a bunch of random folders! Why is there not a "Program Files" option for Android, where Google FORCES these folders into a subfolder group, so that you can not only locate them easier, but they are not cluttering up your SD.
So, do you guys think is this a good idea? And if so, where can I go to have this heard by Android devs?
Click to expand...
Click to collapse
You have no idea what you are talking about, do you?
http://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard
This is for standard linux but it the logic behind it applies to Android as well.
You know, TS has a point. Most applications write their data into /sdcard/<app>, whereas it would've been cleaner to do that in /sdcard/data/<app> (or, even better and in line with unix's defacto standard, in /mnt/sdcard/<app>). The SDCard's root is limited in the number of directory entries it can contain (due to the mandatory use of the FAT filesystem). Even though this currently may be a theoretical problem, it's messy and unorganized.
Some software really makes a mess out of it; Sygic for example creates 4 directories in /sdcard with the names "2577", "Drive", "Maps" and "Res". Not to mention the file(s) it creates in the root as part of the installation process. Now, that is plain silly.
Then there is the case-sensitivity in *IX that some programmer's don't seem to understand. And thus, there are directories /sdcard/Download, /sdcard/download and /sdcard/Downloads. Two of them are created by the firmware on the phone (you guessed it: "download" and "Downloads"). It just is a mess on our sdcards!
Using a wintendo-like naming convention ("Program Files" or "Program Data" or something similar) I would not advice. But /mnt/sdcard/data would've been a good start me thinks.
The other point TS is referring to... I think it's Samsung that introduced the idea of an "internal SD Card"? At least, that's what they call it - I don't know if it really just is a cheap design solution to put an SD Card in there for storage that can't be changed.
^I like that guy.
Is this the end of the discussion?
thehyecircus said:
Is this the end of the discussion?
Click to expand...
Click to collapse
I think there is nothing to add:
There is your "program files" dir in the Android OS (/data/data).
Some apps want to store their files in public space in addition to "program files".
It would be nice if most of them would place their files in one root dir.
Some of them don't do that and you can't do anything with it.
That's it
I'd like to think Google could force them to locate their data somewhere else. And to add a .nomedia or whatever stops Android from picking up the app's media files. Really, a lot of things about Android feel like the whole thing is an afterthought.

Objective of Kitkat SD Card Permissions

Regarding 4.4 Kitkat External SD Card access permision, anyone can explain to us what is the objective of having such rigid permissions ?
"....
Starting in Android 4.4, the owner, group and modes of files on external storage devices are now synthesized based on directory structure. This enables apps to manage their package-specific directories on external storage without requiring they hold the broad WRITE_EXTERNAL_STORAGE permission. For example, the app with package name com.example.foo can now freely access Android/data/com.example.foo/ on external storage devices with no permissions. These synthesized permissions are accomplished by wrapping raw storage devices in a FUSE daemon.
..."
Full source : http://source.android.com/devices/tech/storage/
On 4.3 and older, a malicious app can wipe the whole sdcard with standard permissions. New permissions prevent it.
aydc said:
On 4.3 and older, a malicious app can wipe the whole sdcard with standard permissions. New permissions prevent it.
Click to expand...
Click to collapse
So this is useful then not a considered 'bug'..
I guess there will be no benefits anymore to use 3rd party file manager if we dont root our phones. Niche market just collapsed.
Sorry, but I have follow up questions:
I wonder how many malicious pieces of software like that are in a Google Play store to warrant breaking most third party applications that write to SD card? But I guess now, that apps can't write to SD card, there will be not much to protect there anyhow? And how will this all work in the future, once apps get their permissions fixed? I won't be allowed to access my card or format it at will? or will I be able to grant those permissions, but then how would I know the software is malicious any more than I know now? Am I too stupid to grasp the logic of all this?
pete4k said:
Sorry, but I have follow up questions:
I wonder how many malicious pieces of software like that are in a Google Play store to warrant breaking most third party applications that write to SD card? But I guess now, that apps can't write to SD card, there will be not much to protect there anyhow? And how will this all work in the future, once apps get their permissions fixed? I won't be allowed to access my card or format it at will? or will I be able to grant those permissions, but then how would I know the software is malicious any more than I know now? Am I too stupid to grasp the logic of all this?
Click to expand...
Click to collapse
That's what I had in mind too but if you see from the source link above I think Google is anticipating MULTI USER environment where some "stuffs" from me could wrack havoc some of "your stuffs". That scenario actually will only happen on MULTI USER tablet / smartphone, but that surely not mainstream are they ?
pete4k said:
Sorry, but I have follow up questions:
I wonder how many malicious pieces of software like that are in a Google Play store to warrant breaking most third party applications that write to SD card? But I guess now, that apps can't write to SD card, there will be not much to protect there anyhow? And how will this all work in the future, once apps get their permissions fixed? I won't be allowed to access my card or format it at will? or will I be able to grant those permissions, but then how would I know the software is malicious any more than I know now? Am I too stupid to grasp the logic of all this?
Click to expand...
Click to collapse
As stated on source.android.com:
Starting in Android 4.4, the owner, group and modes of files on external storage devices are now synthesized based on directory structure. This enables apps to manage their package-specific directories on external storage without requiring they hold the broad WRITE_EXTERNAL_STORAGE permission. For example, the app with package name com.example.foo can now freely access Android/data/com.example.foo/ on external storage devices with no permissions. These synthesized permissions are accomplished by wrapping raw storage devices in a FUSE daemon.

New Sheild tablet-Game recordings

Hi, i've just bought a shield tablet after getting absolutely sick of my galaxy tab s 10.5's lagwiz. Few questions i have.
I've been tinkering with screen capture, the files are stored on my 64 gb sd card but i am not able to delete the files. How do i do this? Can i choose a custom save location?
The power button is horrible, is there any way i can install a double tap to wake like feature without rooting?
Thanks
KKK:
If there's no file manager installed, you can only delete files by plugging your tablet into a computer, or by rooting and running SDFix or similar.
Lollipop:
You need to get a file manager to delete files from the sd card if you can't use the stock one. If ES File Explorer doesn't work already with some extra screwing around with the new Google File Pocket or whatever it is, you'll need to reformat your sd card perhaps.
Samsung:
Ironically, your colourful and unnecessary terminology for Samsung's incredible software belies its excellent addition of a file manager that does everything you want to do here.
Only pre installed apps are allowed to write to any of the areas of the SD card by default (without any excessive API requests) in Lollipop, and they aren't allowed to write outside their own directory at all in KKK. There are some other restrictions but I won't go into those here. I think Google was going for an iOS like experience.
Sent from my Galaxy S5
Haha, i'll be honest, you are right, the in built file manager in the tab S was superb. I've managed to fix it, somehow the screen recordings were saved to my sd card and wouldn't delete, not even with various 3rd party file explorers. I just took the sd out and connected it to my PC and now it has deleted. Job done.
Ok, so i am just wondering, although i can delete the screen capture files by taking out my sd card and connecting it to the computer first, surely there must be an option within nvidia share for saved files to be deleted. No 3rd party file explorers allow me to delete the content and i dont really want to take out my sd card each time i want to delete a random screen capture. What if one didnt have a PC, does nvidia expect the SD card to eventually become full and be useless? i dont get it, i must be missing something.

1. Allow any app to write external SD and 2. Resize any activity for multi-window

Nothing earth shattering but I thought the info it's worth sharing in a new thread.
Assuming that you have already activated the Developer Options section, at the very bottom there are two very interesting options (recently introduced):
1. Allow any app to write on external SD and
2. Make any activity resizeable so it can be used in multi-window.
This is it! See the screenshot!
Cheers!
i did it but not sure what it does.. maybe usefull in dex mode?
miman04 said:
i did it but not sure what it does.. maybe usefull in dex mode?
Click to expand...
Click to collapse
Did you read the description?? It allows all apps to go sd card and multi window usage
I used it to move whatsapp on the external sd card, but all media are still on the internal memory and if move them manually, whatsapp can't see them and create a new folder in the internal memory. How can i fix it?
After I made the change, it seemed laggy. Using an Evo select card. Unchecked the setting and moved my apps back to internal and things are back to normal.
Op clearly does not understand this option (talking only about first one). When I say this, I honestly don't mean to insult. It is meant for adoptable storage (which we don't have on samsung). It is to force install apps on adoptable storage even if dev has not allowed this in the app. It is a buggy feature, that prevents app updating, on the phones that have this function, so even there it is best left alone.
This will not magically allow app write access to our phone, but it might allow the app to be moved to the card, with caveats above.
Sent from my phone

Categories

Resources