Details
-
Sub-task
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
Android Persistent files are (also) stored in an inconvenient place by default: Either the application data directory (not accounting for a possible multi-user environment), or the root of the SD Card, if it is mounted (And on Nexus devices, the emulated SD Card is always mounted)
See CB-285 for much more discussion, and http://developer.android.com/guide/topics/data/data-storage.html for a good explanation of the properties of various storage locations.
There should be a single preference in config.xml for Android persistent files. It can take one of two values (currently; additional values may be added later if we have better ideas)
<preference name="AndroidPersistentFileLocation" value="Compatibility" /> (Old location logic) <preference name="AndroidPersistentFileLocation" value="Internal" /> (New location)
"Internal" will put persistent files under the user's application internal storage directory Activity.getFilesDir() + "/files" – the extra /files means that other filesystem plugins can register roots at different places under getFilesDir() which will not be visible to one another.