EACCES(许可被拒绝)。试图访问由另一个应用程序Android创建的文件

时间:2014-09-29 01:07:42

标签: android

我正在尝试阅读由其他Android应用程序创建的文件。

    File file = new File("/data/data/air.br.com.screencorp.MobilePlayer/br.com.screencorp.MobilePlayer/Local Store/token");
    FileInputStream fis = null;

    try {
        fis = new FileInputStream(file);

        Log.d("SIZE", "Total file size to read (in bytes) : "
                + fis.available());

        int content;
        StringBuilder token = new StringBuilder();

        while ((content = fis.read()) != -1) {
            token.append((char) content);
        }

        Log.d("TOKEN", token.toString());

    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        try {
            if (fis != null)
                fis.close();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }

我不知道为什么,但我不允许访问该文件。我的清单上有READ_EXTERNAL_STORAGE权限。

我应该使用SharedPreferences吗?

感谢。

1 个答案:

答案 0 :(得分:1)

无法从您的应用访问其他应用私有数据的数据。这是android的安全模型。该应用应该已对该文件设置MODE_WORLD_READABLE权限,然后才能访问该文件