Home > Net >  Android Internal vs External Storage Confusion
Android Internal vs External Storage Confusion

Time:07-28

I'm new to Android and extremely confused about storage. I have internal storage on my Chromecast of 4GB. I plugged in a USB and formatted as storage and enabled developer options to force push installs to external. The drive shows under settings as 'USB Drive', however when I load File Commander App it's not showing at all. When I used Termux and look at /mnt/sdcard/Android/obb to find a large OBB I want to move, it seems to be showing exactly the same directory as ~/storage/shared/Android/obb.

So where exactly is internal storage vs external storage, and how can I move files between them if I can't do so using File Commander?

Thanks

CodePudding user response:

Internal vs external storage is kind of a distinction that didn't go the way it was expected to go. I think originally it was meant to be phone storage vs SD drives, but it moved away from that. Now internal storage is special storage for an app held in phone memory. Its limited in size per app, but you should reliably be able to hold that amount. No other app can read this (unless your phone is rooted).

External storage is unlimited, but theoretically may be less reliable? You may also not be able to get any, if the device is out of space. But its not really removable anymore, so you can count on it staying there. It also is specific to your app and no other app can read it.

Then there's a few special folders in external storage anyone can access. Downloads, photos, etc. These work like external storage but data stored there can be accessed by other apps.

None of the app specific storage will show on file picker, because other apps don't have access. Unless you're rooted, in which case the rules can change. Or if you're using ADB and debugging.

As for where the actual folders are on disk- that can change depending on model. You can't depend on exact directory structure on Android. When you're writing a program that's why you use getFilesDir and getExternalFilesDir.

(If you're wondering why they still have a difference between the two- I don't know other than inertia. They've killed every difference between them, the little difference left may as well be killed to make programming simpler IMHO).

CodePudding user response:

In short, Internal Storage is for apps to save sensitive data to which other apps and users cannot access. However, Primary External Storage is part of built-in storage which can be accessed (for read-write) by the user and other apps but with permissions

  • Related