2016-04-09 87 views
1

如果存在,我需要獲取內部存儲和SD卡的目錄。但我已經搜索過,但沒有找到有用的東西。我怎樣才能做到這一點?我需要掃描它們的特定類型的文件。這段代碼給我內部存儲目錄,而不是我的SD卡:獲取內部存儲和SD卡的目錄(如果存在)

File file = new File(Environment.getExternalStorageDirectory()+"/"); 
+0

你不必任意訪問[移動存儲](https://commonsware.com/blog/2014/04/09 /storage-situation-removable-storage.html)在Android 4.4+上。您可以訪問[內部存儲]的應用程序部分(https://commonsware.com/blog/2014/04/07/storage-situation-internal-storage.html)。假設您有來自用戶的許可,您還可以訪問[外部存儲](https://commonsware.com/blog/2014/04/08/storage-situation-external-storage.html)。歡迎您向具有特定MIME類型的文件查詢'MediaStore',並且通常涵蓋可移動存儲。 – CommonsWare

+0

但文件管理器應用程序如何工作?他們可以訪問他們兩個@CommonsWare –

+0

預裝文件管理器可以被設備製造商授予額外的權利。第三方文件管理器僅限於內部存儲和外部存儲。許多(如果不是大多數的話)Android用戶只有內部和外部存儲,因爲許多Android設備沒有可移動存儲,而那些可能沒有安裝任何類型的卡。 – CommonsWare

回答

1

有成千上萬的教程鏈接,Android開發者頁面是許多之一,下面是鏈接;

http://developer.android.com/guide/topics/data/data-storage.html#filesExternal

據我所知,你可以訪問你的應用程序內部目錄和查詢SD卡是否安裝等,但得到全面進入設備內部的風向?我懷疑它是因爲它會違反用戶的隱私。你甚至需要用戶權限查詢外部存儲

+0

我已經檢查了該鏈接,但沒有幫助我做我想做的事 –

0

試試這個行:

File sd = Environment.getExternalStorageDirectory(); 
相關問題