应用程序将文件写入内部SD卡,但Windows不会看到该文件

时间:2011-08-15 23:27:59

标签: android file-io usb xoom

所以,我要做的是将数据写入SD卡上的文件,然后让Windows读取文件。

我看到的问题是,在重新启动xoom之前,Windows永远不会看到我的新文件。 xoom有OS versin 3.2,我也在构建SDK版本。重新启动xoom并在Windows中导航xoom后,我的新目录和文件会在刷新目录几次后显示出来。这是我正在编写的应用程序的问题,因为我在xoom和设备之间交换信息。

我在xoom上写出文件的代码非常简单,但是如果我需要在Windows可以看到我刚创建的文件之前重新启动xoom,我必须遗漏一些东西。我认为不应该这样做。

  String path = Environment.getExternalStorageDirectory().getPath() + "/TEST3/";
  File dirPath = new File(path);
  dirPath.mkdirs();

  try
  {
     FileOutputStream fw = new FileOutputStream(path + "test4", false);
     fw.write(mac.getBytes());
     fw.flush();
     fw.close();
  }
  catch (IOException e)
  {
     // TODO Auto-generated catch block
     e.printStackTrace();
  }

只是为了更多的背景知道为什么我这样做可能有助于理解我正在尝试做什么。

基本上我需要将Xoom连接到一个设备,在那里他们将通过USB互相交换信息。该设备将使用已经实现的mtpfs安装xoom。当通过USB连接和安装时,Xoom和设备将写出具有特定内容的文件。每个人都写入适当命名的单独文件。然后,当完成后,他们将根据每一方写的第二​​个文件读取彼此的文件,以表明他们已完成写作。

因此,您可以看到必须重新启动才能看到文件非常糟糕。这个应用程序都是一个自定义的工作,不会在市场上或类似的东西。 xoom本身只会运行此应用程序以及其他一些自定义应用程序。

感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:2)

使用MediaScannerConnectionscanFile()

在Honeycomb及更高版本上,Android已切换到MTP并远离USB大容量存储模式。总的来说,这是一件好事,但这意味着只显示索引文件。