android中MODE_WORLD_READABLE的替代方案是什么?

时间:2014-01-30 09:31:32

标签: android android-file

如果没有外部存储器,我试图在android内存中写一些图像。

    File sdDir = new File(Environment.getExternalStorageDirectory(), "mydir");
    File filesysDir = getDir("mydir", MODE_WORLD_READABLE);
    File file = new File(sdDir, "myfile.txt");

所以我已经编写了上面的代码,但现在没有MODE_WORLD_READABLE;那么我可以通过哪种方式编写文件并访问它。

2 个答案:

答案 0 :(得分:0)

你可以尝试:

ContextWrapper cw = new ContextWrapper(context);

File directory = cw.getDir("mydir", Context.MODE_PRIVATE);

答案 1 :(得分:0)

Android reference中所述,该常量已从API 17弃用。 如文档中所述,常量仍然有效但在备份应用程序后可能无法保留权限。

这适用于您的应用专用的文件但是当您将文件创建到外部存储中时,该权限没有任何意义,因为具有正确权限的其他应用可以读取它。

为了允许读取私人文件,Android文档建议在一段时间内创建ContentProvider提议文件管理。