Android’s file structure is so incomprehensible. I’m genuinely surprised there hasn’t been any significant effort made to make it more readable. Pictures saved in app directories, downloads, camera, images, pictures, media, DCIM???.
I’m genuinely surprised there hasn’t been any significant effort made to make it more readable.
Quite the opposite. They’ve tried to make it better, and in turn, they’ve made it worse.
They used to have a pretty straightforward Linux file structure, and you were expected to put things in the external Pictures folder. And downloads went to the external Downloads folder. Back then, internal storage was small and SDs were large, so apps couldn’t really afford to store these things locally and the SD structure was well enough defined that it was pretty clear where pictures would go.
Now, Google has pushed against SD cards. They also started requiring more permissions for external storage. They’ve added some “documents” APIs that were supposed to make it easier to tag/find files, but it’s a tangled mess and most apps don’t touch it. And they’ve rewritten their storage model multiple times at this point. If you’re writing a new app, it’s unclear which model to even follow anymore because Google has created a giant cluster fuck of options and paradigms.
Google is actively making this problem worse and worse. I wish they had never tried to “fix” this in the first place.
Open source developer and Linux enthusiast here. Although cluttered, Android’s home directory is fairly simple to understand
The nightmare begins when you take a look at the root filesystem.
One time I was trying to port an OS to my phone and I had to figure out the Android init system. Went to source.android.com and what. the. fuck. Just as a side-by-side comparison:
Linux boot sequence:
Android boot sequence (unmodded, SIMPLE):
There are so many wrong things about it like why are there 11, 12 places to put programs (/system/bin, /bin, /usr/bin /system/usr/bin, /sbin, /system/usr/share/bin…)
Why the fuck drivers are scattered around folders instead of just /lib/modules
Why is the home directory /storage/emulated/0/ instead of just /home/0/ (also why the user is named “0”)
Where the fuck is everything???
God (Linus Torvalds) forgive me but even Windows is better than that shit
i wonder if that graphic is up to date with system as root and A/B dynamic partitioning and whatever crazy new bullshit google invents with every release
Android’s file structure is so incomprehensible. I’m genuinely surprised there hasn’t been any significant effort made to make it more readable. Pictures saved in app directories, downloads, camera, images, pictures, media, DCIM???.
Quite the opposite. They’ve tried to make it better, and in turn, they’ve made it worse.
They used to have a pretty straightforward Linux file structure, and you were expected to put things in the external Pictures folder. And downloads went to the external Downloads folder. Back then, internal storage was small and SDs were large, so apps couldn’t really afford to store these things locally and the SD structure was well enough defined that it was pretty clear where pictures would go.
Now, Google has pushed against SD cards. They also started requiring more permissions for external storage. They’ve added some “documents” APIs that were supposed to make it easier to tag/find files, but it’s a tangled mess and most apps don’t touch it. And they’ve rewritten their storage model multiple times at this point. If you’re writing a new app, it’s unclear which model to even follow anymore because Google has created a giant cluster fuck of options and paradigms.
Google is actively making this problem worse and worse. I wish they had never tried to “fix” this in the first place.
Open source developer and Linux enthusiast here. Although cluttered, Android’s home directory is fairly simple to understand
The nightmare begins when you take a look at the root filesystem.
One time I was trying to port an OS to my phone and I had to figure out the Android init system. Went to source.android.com and what. the. fuck. Just as a side-by-side comparison:
Linux boot sequence: Android boot sequence (unmodded, SIMPLE):
There are so many wrong things about it like why are there 11, 12 places to put programs (/system/bin, /bin, /usr/bin /system/usr/bin, /sbin, /system/usr/share/bin…)
Why the fuck drivers are scattered around folders instead of just /lib/modules
Why is the home directory /storage/emulated/0/ instead of just /home/0/ (also why the user is named “0”)
Where the fuck is everything???
God (Linus Torvalds) forgive me but even Windows is better than that shit
i wonder if that graphic is up to date with system as root and A/B dynamic partitioning and whatever crazy new bullshit google invents with every release