How to store files in Android's cache directory?
Solution 1
Each application in Android runs under it's own user account by default, so files created by your app would not be accessible from any other app. Check out bullet point #3 at the top of this page:
http://developer.android.com/guide/topics/fundamentals.html
You could also verify this by running a shell in your emulator/device and looking at the output of ls -l.
Solution 2
But I'm not sure how to set permissions on files there because I would not be able to use Context#MODE_PRIVATE.
AFAIK, they should be private by default.
Comments
-
Daniel almost 2 years
My goal is store temporary files in the directory returned by Context#getCacheDir().
/data/data/my.app/cache/somedir/foo.json
I presume I can just use java.io apis to write files there. But I'm not sure how to set permissions on files there because I would not be able to use Context#MODE_PRIVATE.
The filename parameter to Context#openFileOutput and Context#openFileInput cannot accept input with path delimiters. Thus they are only useful for files created in directory:
/data/data/my.app