我正在尝试将一些文件保存在 micro SDCard 上。为了检查 SDCard 的可用性,我使用以下方法;
private boolean isSdCardReady() {
Enumeration e = FileSystemRegistry.listRoots();
while (e.hasMoreElements()) {
if (e.nextElement().toString().equalsIgnoreCase("sdcard/")) {
return true;
}
}
return false;
}
即使此方法返回 true,当我尝试保存文件时,它也会给出异常net.rim.device.api.io.file.FileIOException: File system is not ready
。
这是什么意思?如果 SDCard 不可用,那么为什么将其列在FileSystemRegistry.listRoots()
?
如何确保 SDCard 可用于写入?
我的开发环境:
- 黑莓 JDE Eclipse 插件 1.5.0
- 黑莓操作系统 4.5
- 带有 3G 卡的黑莓 Bold