Reputation: 47805
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
Upvotes: 7
Views: 20173
Reputation: 21161
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.
Upvotes: 7
Reputation: 1006614
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.
Upvotes: 5