如何验证Sdcard是否可用?我的应用程序是保存一些语音到SD卡。如果没有存储卡意味着,我的应用程序将强行关闭。我不知道那段时间我能做些什么。有谁可以请,我如何在将数据保存到存储卡之前验证这一点。
更新
我已经找到了以上这个并且也得到了SO用户的好答案。现在,我想查看存储卡大小是否已满?我怎么能这样做?任何人指导我。
先谢谢。
答案 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())
然后外部存储空间不可用。