我的目标是将临时文件存储在Context#getCacheDir()返回的目录中。
/data/data/my.app/cache/somedir/foo.json
我认为我可以使用java.io apis在那里写文件。但是我不确定如何设置文件的权限,因为我无法使用Context#MODE_PRIVATE。
Context#openFileOutput和Context#openFileInput的filename参数不能接受带路径分隔符的输入。因此,它们仅对目录中创建的文件有用:
/data/data/my.app
答案 0 :(得分:6)
默认情况下,Android中的每个应用程序都在其自己的用户帐户下运行,因此您的应用程序创建的文件将无法从任何其他应用程序访问。查看本页顶部的项目符号#3:
http://developer.android.com/guide/topics/fundamentals.html
您还可以通过在模拟器/设备中运行shell并查看ls -l的输出来验证这一点。
答案 1 :(得分:5)
但我不确定如何设置 那里的文件权限因为我 无法使用 上下文#MODE_PRIVATE。
AFAIK,默认情况下应该是私密的。