次のコードを使用して、Sdカードが存在し、書き込み可能かどうかを確認していますが、エミュレーターのSdカードのコンテキストでそのコードを使用すると、Sdカードがエミュレーターに存在しないが、実際にはファイルエクスプローラーに存在することが示されます対応するエミュレータのSDカードの内容を表示しています。これはコードです。
static public boolean hasStorage(boolean requireWriteAccess) {
//TODO: After fix the bug, add "if (VERBOSE)" before logging errors.
String state = Environment.getExternalStorageState();
System.out.println("storage state is " + state);
if (Environment.MEDIA_MOUNTED.equals(state)) {
if (requireWriteAccess) {
boolean writable = checkFsWritable();
System.out.println("storage writable is " + writable );
return writable;
} else {
return true;
}
} else if (!requireWriteAccess && Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) {
return true;
}
return false;
}
このコードは、SDカードがマウントされていないことを示していますが、ファイルエクスプローラーは別の画像を表示しています。助けてください。よろしくお願いします。