次のコードを使用してSDカードが使用可能かどうかを確認しますが、Android4.x以降を実行するSamsungGalaxy IIおよびNoteデバイスでは、実際にはデバイスにSDカードがない場合でも、OSはSDカードの使用をシミュレートします。
private boolean isSDCardAvailable() {
return android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);
}
SDカードが利用可能な場合は、getExternalCacheDir()を呼び出してディレクトリを取得します。それ以外の場合は、ユーザーにエラーを表示し、getCacheDir()を呼び出して内部ストレージを使用します。
上記の方法では、SDカードがない場合でも、TRUEとすべてのデバイスが返されます。