0

我尝试使用 mkdirs() 动态创建一个目录,它成功创建了目录并将文件复制到创建的目录中。可以在平板电脑 (xoom) 中看到新目录,但是当我连接到我的 PC 以复制一些文件时,该目录不会出现。

我能做些什么?

美国东部时间:这就是我所做的:

File dirs = new File(Environment.getExternalStorageDirectory()+"/MyDir/");
    dirs.mkdirs();

怎么了?

EDT2:我已经尝试了这个线程(http://stackoverflow.com/questions/6218572/creating-a-folder-programmatically-on-a-xoom)中的所有内容,但没有成功。建议?

PS:我找到了一个重新扫描 de sdcard 的应用程序。如果我创建目录并使用此应用程序,它会完美运行。谁知道如何重新扫描sdcard?

4

3 回答 3

1

相当旧的帖子,但想添加不需要添加 URI 的答案。

// initiate media scan and put the new things into the path array to
// make the scanner aware of the location and the files you want to see
MediaScannerConnection.scanFile(context, new String[] {filePath}, null, null);
于 2014-10-16T05:29:50.540 回答
1

我已经通过执行以下行解决了这个问题,这已在上面的答案以及https://stackoverflow.com/a/8606529/2482894中推荐

sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,
Uri.parse("file://" + Environment.getExternalStorageDirectory())));
于 2013-08-23T03:48:28.900 回答
0

一些具有内部存储器和 SD 卡的平板电脑(我认为包括 xoom)具有不同的文件存储方式。getExternalStorage 指向文件夹 /mnt/SDCard,但这是内部存储器,要到达 SDCard,路径是 /mnt/SDCard/SDCard(我知道很奇怪)。

因此,您需要查看平板电脑上 SDCard 的真实挂载并查看 Environment.getExternalStorageDirectory() 的值,否则您将不会保存在 SDCard 上,而是保存在平板电脑文件系统中。

编辑:这可能是 xoom 的媒体驱动程序的问题,当用户安装在 PC 上时,它应该扫描 sdcard。

要重新扫描您可以卸载和安装的 SD 卡,请使用 Gallery 应用程序刷新 SD 卡或以编程方式调用 sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://" + Environment.getExternalStorageDirectory().getAbsolutePath())));

于 2012-08-27T19:41:06.510 回答