Monday, 13 May 2013
Free Space - Internal Vs. External Storage
The confusion lies in what these actually mean; what is the external and internal storage - flash? SD card? Internal memory? Connected drives? Well, that differs depending on the device and the version of Android, so it's quite a hard question to answer. Basically, those free space statistics are retrieved from the Android OS using a couple of lines of code that are supposed to give the "external" and "internal" storage for the system. Because each Android device may implement its storage solution in a different way, depending on the device manufacturer and version of Android, you may find that what the Android OS thinks of as being external, you may think of as internal, or vice versa. Or it may show the same statistics for external and internal. Or you may not have external, yet it tells you that you do. Confusing, huh? I know... my Nexus 4 does not have what I consider to be external storage, i.e. an SD card, yet it tells me that I have 5.67GB of internal storage AND 5.67GB of external storage.
What's even more confusing is that on my old Nexus S and many other devices I have owned over the years, it would give exactly the statistics I would have expected for external and internal storage. The moral of the story is that those couple of lines of code to retrieve these statistics work on some devices, but don't make an awful lot of sense on others. And as far as I know, because of the many different ways storage is implemented across all Android devices, there is no other universal way that should give accurate readings for external and internal storage.
So it's that old Android case of "works on some, but not on all, and some is better than none". If any developers know of a better way of retrieving these statistics, please get in contact with me and let me know.