Android:SD卡验证

时间:2012-01-10 13:58:12

标签: android android-sdcard

如何验证Sdcard是否可用?我的应用程序是保存一些语音到SD卡。如果没有存储卡意味着,我的应用程序将强行关闭。我不知道那段时间我能做些什么。有谁可以请,我如何在将数据保存到存储卡之前验证这一点。

更新

我已经找到了以上这个并且也得到了SO用户的好答案。现在,我想查看存储卡大小是否已满?我怎么能这样做?任何人指导我。

先谢谢。

4 个答案:

答案 0 :(得分:5)

是否安装了SD卡.....

if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {

    // SD Card is mounted

} else {

    // SD Card is not mounted

}

答案 1 :(得分:1)

我从Here找到了一条路。

它提供了简单的方法来检查 -

String state = Environment.getExternalStorageState();
if(Environment.MEDIA_MOUNTED.equals(state) || Environment.MEDIA_MOUNTED_READ_ONLY.equals(state))
{
   //Whatever we want
}else
{
   //Whatever we want
}

感谢大家回复我的问题。

答案 2 :(得分:0)

您可以在保存之前检查the external storage state

答案 3 :(得分:-1)

有几种不同的方法可以做到这一点,但最好的方法可能是使用getExternalFilesDir。如果sdcard不可用,则返回null。另外一个好处是,当用户删除您的应用程序时,它将被删除。

如果您不想使用此功能,只需查看您的目录是否存在,或者您是否可以创建它。例如。 if(!dir.exists() && !dir.mkdirs())然后外部存储空间不可用。