簡體   English   中英

WRITE_EXTERNAL_STORAGE可能的目標文件夾

[英]WRITE_EXTERNAL_STORAGE Possible target folders

擁有WRITE_EXTERNAL_STORAGE權限時,我希望有權在整個文件系統上進行寫(例如/sdcard/storage/emulated/0/storage/sdcard0/mnt/sdcard等)

但是由於內部FS結構不同,我無法真正確定目標設備上允許的文件夾。

當前,我使用Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)來獲取downloads文件夾,但是我認為這不是我唯一可以使用的文件夾。

因此有兩個問題:

  1. 有沒有辦法找出我可以用這種權限寫的文件夾?
  2. 使用DownloadManager時,第一個問題可能是目標文件夾嗎?

使用Environment.getExternalStorageDirectory()獲取可用的外部存儲目錄。

您將獲得Android外部存儲目錄。 如果用戶已將其安裝在計算機上,已從設備中刪除或發生了其他問題,則該目錄當前可能無法訪問。 您可以使用getExternalStorageState()確定其當前狀態。

注意:請勿在此處與“外部”一詞混淆。 最好將此目錄視為媒體/共享存儲。 它是一個文件系統,可以保存相對大量的數據,並且可以在所有應用程序之間共享(不強制執行權限)。 傳統上,這是SD卡,但也可以將其實現為設備中的內置存儲,該設備不同於受保護的內部存儲,並且可以作為文件系統安裝在計算機上。

對於android,只有一個外部存儲,它通過getExternalStorageDirectory()返回,因此默認情況下應使用該外部存儲。

但是,公共掛載點通常對運行您的應用程序的用戶進程具有rw權限,因此您也可以在其中寫入。 獲得root權限,您幾乎可以在任何地方編寫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM