Android應用開(kāi)發(fā)中,常使用Environment類(lèi)去獲取外部存儲目錄,在訪(fǎng)問(wèn)外部存儲之前一定要先判斷外部存儲是否已經(jīng)是可使用(已掛載&可使用)狀態(tài),
并且需要在A(yíng)ndroidManifest.xml文件中添加外部存儲讀和寫(xiě)的權限。
Environment類(lèi)中提供了幾個(gè)靜態(tài)常量用于標識外部存儲的狀態(tài),這些狀態(tài)都是String類(lèi)型
MEDIA_BAD_REMOVAL 在沒(méi)有掛載前存儲媒體已經(jīng)被移除。
MEDIA_CHECKING 正在檢查存儲媒體。
MEDIA_MOUNTED 存儲媒體已經(jīng)掛載,并且掛載點(diǎn)可讀/寫(xiě)。
MEDIA_MOUNTED_READ_ONLY 存儲媒體已經(jīng)掛載,掛載點(diǎn)只讀。
MEDIA_NOFS 存儲媒體是空白或是不支持的文件系統。
MEDIA_REMOVED 存儲媒體被移除。
MEDIA_SHARED 存儲媒體正在通過(guò)USB共享。
MEDIA_UNMOUNTABLE 存儲媒體無(wú)法掛載。
MEDIA_UNMOUNTED 存儲媒體沒(méi)有掛載。
可以通過(guò)靜態(tài)方法getExternalStorageState()來(lái)獲取外部存儲的狀態(tài),如果程序需要在外部存儲里面讀寫(xiě)數據,必須要先判斷:
if(Environment.MEDIA_MOUNTED.equals(
Environment.getExternalStorageState())
|| !Environment.isExternalStorageRemovable())
然后,添加外部存儲讀和寫(xiě)的權限:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE">
</uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE">
</uses-permission>在Environment中還提供了Android標準目錄的路徑,以String類(lèi)型提供。
聯(lián)系客服