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.
开发者_StackOverflow中文版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
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.
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.
精彩评论