Android导出的文件不可见

时间:2017-06-23 11:54:52

标签: android file save

我有一个(很可能是愚蠢的)问题,因为我在Android手机(Nexus5X And​​roid N)上看不到导出的文件。

所以我尝试按如下方式导出我的数据库:

try {
        File dbFile = new File(inFileName);
        FileInputStream fis = new FileInputStream(dbFile);

        File path = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS), DATABASE_NAME);

        Log.d("DatabaseName", DATABASE_NAME);
        Log.d("ExportPath", path.getAbsolutePath());
        OutputStream output = new FileOutputStream(path);

        byte[] buffer = new byte[1024];
        int length;
        while ((length = fis.read(buffer)) > 0) {
            output.write(buffer, 0, length);
        }
        //Close the streams
        output.flush();
        output.close();
        fis.close();
        return true;

一切似乎都在起作用,没有引起任何错误,但我找不到该文件。 我尝试使用adb shell,adb pull和设备直接使用ESFileExplorer。 (设备未植根)。 有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

因为怀疑是一件愚蠢的事情,显然更新的Android版本需要EXTERNAL_WRITE权限。不确定为什么它没有发现错误但它现在有效。