I check whether external storage is mounted and available for read/write, and then I read from it. I'm using the exact official Android sample code (from here).
It says external storage is not mounted. getExternalFilesDir(null)
returns null
.
First, I experienced it with a HTC One V that had no external SD card inserted (but has a large storage internally).
Now, I'm experiencing the same on a WayteQ xTAB-70dci tablet, which has a huge "internal SD card" (this is how the tablet calls it), but no external SD card inserted.
In both cases, the standard Android APIs (getExternalStorageState()
, getExternalFilesDir()
etc.) return false.
I'm absolutely fed up. Obviously, users who pay for my app (game with much graphics) will expect it to be installed properly on their phone/tablet having a huge internal SD card (like the WayteQ).
What is wrong here? Why do these devices (HTC, WayteQ, come on!) point to ext SD card (which is usually missing by default from the product) instead of their huge internal SD storage? Absolutely illogical and even harmful. What can I do, is there a standard workaround to this?