Android ExternalStorageDirectory状态

时间:2014-05-04 19:36:10

标签: android storage

我有一个Android应用程序需要来自SD的一些数据,我使用File.exists()方法检查文件所在的条目,并检查SD卡不是UNMOUNTED或SHARED。这在我的设备上工作正常,但是得到了反馈,在其他设备上显示Toast表示没有数据存在。

我的问题是:

1 - 这种检查是否有办法表明即使从PC上拔下SD卡也没有安装或共享?

2 - getExternalStorageDirectory()是否可以解析为内部存储?我知道这听起来如何,但人们告诉我,当将数据复制到内部存储而不是外部存储时,应用程序可以在某些设备上运行,即使我一直告诉他们不应该发生这种情况。

1 个答案:

答案 0 :(得分:1)

在许多设备上,getExternalStorageDirectory()不会为您提供SdCard,而是解析为通常称为/ sdcard或/ storage / sdcard0的内部存储。如果你没关系 将microSD放入设备中。这些路径保持不变并且有效。

如果您输入的microSD可以安装在许多名称下,例如:

               , "/mnt/sd-ext
               , "/mnt/sdcard-ext
               , "/mnt/external_sd
               , "/mnt/extsd
               , "/mnt/extSdCard
               , "/mnt/sdcard2

没有确定SD卡的功能。 您必须为用户提供选择存储目录的机会。