文件交换PC< - > Android通过USB MTP问题

时间:2015-01-14 20:53:36

标签: android file-upload usb mtp

在我的Android应用程序中,我创建了一个文件并在其中编写了一些测试文本:

File externalPath = getExternalFilesDir(null);
File importPath = new File(externalPath, "pd-import");
if(!importPath.exists()) {
    Log.d(this.getClass().getSimpleName(), "Create import dir: " + importPath.getAbsolutePath());
    importPath.mkdirs();
}

File readme = new File(importPath, "README.txt");
try {
    FileWriter fw = new FileWriter(readme);
    fw.write("This is a test");
    fw.flush();
    fw.close();
} catch (IOException e) {
    e.printStackTrace();
}

这会写入文件,可以使用像 B1文件管理器这样的Android文件浏览器批准。它已写入 HOME / Android / data / JAVA_PACKAGE_NAME / files / pd-import / README.txt Screenshot with Folder http://i58.tinypic.com/20zd6b4.png

logcat告诉我: D / MainActivity:创建导入目录:/ storage / emulated / 0 / Android / data / JAVA_PACKAGE_NAME / files / pd-import

当我通过USB连接我测试代码的Nexus到我的Ubuntu笔记本电脑时,我看到所有其他应用程序数据目录,如 NEXUS 5 / Interner Speicher / Android / data / ALL_THE_OTHER_JAVA_PACKAGE_NAMEs ( " Interner Speicher"代表:内部记忆)。但未列出我的应用程序未列出的文件夹。

Screenshot without the folder http://i62.tinypic.com/xc0kea.png

我是否需要设置一些额外的medatdata / information / whatever,以便通过MTP连接列出文件夹? Anny的建议?

1 个答案:

答案 0 :(得分:1)

重启设备时是否显示目录?如果是,我认为这个错误是原因:https://code.google.com/p/android/issues/detail?id=38282

  

所有使用MTP而非USB Mass Storage的手机都无法正常显示   使用手机将手机连接到计算机时的文件列表   USB电缆。在设备上运行的Android应用也无法看到这些   文件。

     

这会影响使用Java API编写的文件,但似乎不会   影响使用C API编写的文件。

     

解决方案是重启设备。

似乎没有得到解决。