Приложение записывает файл на внутреннюю SD-карту, но Windows не видит файл - PullRequest
2 голосов
/ 16 августа 2011

Итак, что я пытаюсь сделать, это записать данные в файл на SD-карте, а затем Windows прочитать файл.

Проблема, с которой я сталкиваюсь, заключается в том, что windows никогда не видит мои новые файлы, пока я не перезагружу xoom.Xoom имеет OS версии 3.2, и я также собираюсь использовать версию SDK.Как только xoom перезагружается, и я перемещаюсь xoom в окнах, мой новый каталог и файлы появляются после обновления каталога пару раз.Это проблема с приложением, которое я пишу, когда я обмениваюсь информацией между xoom и устройством.

Мой код для записи файла на xoom довольно прост, но я должен что-то упуститьесли мне нужно перезагрузить Xoom, прежде чем Windows сможет увидеть файл, который я только что создал.Я чувствую, что это не нужно.

  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.Устройство будет монтировать xoom с помощью mtpfs, который уже реализован.При подключении и подключении через USB Xoom и устройство запишут файл с определенным содержимым.Каждый из них пишет в отдельные файлы с соответствующими именами.Затем, по окончании, они будут читать файлы друг друга, основываясь на втором файле, записанном каждой стороной, чтобы показать, что они закончили запись.

Так что вы можете видеть, что перезагрузка в середине этого процесса просто для просмотра файловбыть довольно ужаснымЭто приложение все заказной и не будет на рынке или что-то в этом роде.В самом xoom это приложение будет работать только вместе с некоторыми другими пользовательскими приложениями.

Спасибо за любую помощь, которую вы можете мне оказать.

1 Ответ

2 голосов
/ 16 августа 2011

Используйте MediaScannerConnection и scanFile().

В версии Honeycomb и выше Android перешел на MTP и отключился от режима USB Mass Storage. В целом, это хорошо, но это означает, что отображаются только проиндексированные файлы.

...