我不确定问题的根源是什么 - 带有错误的旧 android 版本或者我做错了什么,但我的问题是无论我做什么,android 都会报告 SD 卡已安装。即使它不在平板电脑中(archos 7o)..
public boolean saveToDisk(String filename, String header) {
/* first check to see if the SD card is mounted */
if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
//throw some exception so we can display an error message
// XXX
return false;
}
try {
File root = Environment.getExternalStorageDirectory();
File dir = new File(root.getAbsolutePath() + "/bioz");
if (!dir.exists()) {
dir.mkdirs();
}
File file = new File(dir, filename);
....
第一个测试始终为真,getExternalStorageDirectory() 以 /mnt/storage 响应,并且查看 /mnt/storage/bioz 是否存在的测试表明该目录确实存在。
知道发生了什么吗?我做错了什么,是 API 坏了,还是别的什么?
谢谢,礼萨