我使用下面的代碼來檢查SD卡是否可用,但是在運行Android 4.x的Samsung Galaxy II和Note設備上,以後操作系統模擬有SD卡,即使在實際上設備上沒有SD卡。正確檢測SD卡是否可用
private boolean isSDCardAvailable() {
return android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);
}
如果SD卡,可我再調用getExternalCacheDir()得到別人的目錄顯示我這種現象以給用戶和呼叫getCacheDir()使用內部存儲。
上述方法即使沒有SD卡也會返回TRUE和ALL設備。
我試圖用isExternalStorageEmulated但我的三星Galaxy掌上運行的Android 2.3也效仿SD卡,這種方法不可用API等級10 :( – Lennie
是的,這是真的,我已經寫了這個方法,只有在API 11之後纔可用。使用它時要小心。 – AAnkit
拯救了我的生命。謝謝! – Aerilys