LOST.DIR闪存驱动器的问题

时间:2014-03-22 03:17:38

标签: android usb-flash-drive usb-otg

我试着简要总结一下。我有一个应用程序,可以将其数据与通过OTG适配器连接的USB闪存驱动器同步。问题是:某些文件最终会出现在闪存驱动器根目录中名为LOST.DIR的文件夹中。它们都是4KB大,并且具有随机的3位数字名称,没有文件扩展名。我知道它们包含来自我的应用程序的数据,因为如果我在记事本中打开它们,我可以看到我的应用程序正在输出的数据。然而,该数据有时与随机符号混合。基于我对文件系统的基本知识,文件和随机内容的一致大小让我觉得这些是由Android标记为坏的内存块并移动到此文件夹。

有一点需要注意:我将闪存驱动器视为可热插拔,就像它们在Windows设备上一样。我理解将它们视为此可能无效。为了解决这个问题,我在完成对闪存驱动器的读写操作后,通过sync调用su命令。我的理解是,这应该将RAM内缓冲区/缓存与物理闪存驱动器同步,从而使其安全移除。这可能是一个错误的假设。

所以,我的问题是双重的:

  1. 是什么导致数据随机消失并移至LOST.DIR
  2. 将闪存驱动器视为可热插拔是否安全?如果没有,有没有办法让他们表现得那么好?
  3. 如果我的问题不够明确或您需要更多信息,我可以为您澄清一些事情。谢谢。

1 个答案:

答案 0 :(得分:0)

我想到的是,您不是唯一一个访问闪存驱动器的人(例如,媒体扫描程序),因此同步将刷新缓冲区,但可能正在进行某些操作,并且无论如何都会同步退出。我认为你也应该卸下它(它会失败,直到删除它真的很安全。)