Environment.ExternalStorageDirectory 屬性

定義

傳回主要共用/外部儲存體目錄。

public static Java.IO.File? ExternalStorageDirectory { [Android.Runtime.Register("getExternalStorageDirectory", "()Ljava/io/File;", "")] get; }
[<get: Android.Runtime.Register("getExternalStorageDirectory", "()Ljava/io/File;", "")>]
static member ExternalStorageDirectory : Java.IO.File

屬性值

屬性

備註

傳回主要共用/外部儲存體目錄。 如果使用者在電腦上掛接此目錄、已從裝置中移除,或發生其他問題,則目前可能無法存取此目錄。 您可以使用 來判斷其目前狀態 #getExternalStorageState()

<em > 注意:此處的 「external」 一詞不會混淆。 此目錄可視為媒體/共用儲存體。 它是檔案系統,可以保存相對大量的資料,而且在所有應用程式之間共用, (不會強制執行許可權) 。 傳統上,這是 SD 記憶卡,但它也可能在裝置中實作為內建儲存體,其與受保護的內部儲存體不同,而且可以掛接為電腦上的檔案系統。 </Em>

在具有多個使用者 (的裝置上 UserManager ,如) 所述,每個使用者都有自己的隔離共用儲存體。 應用程式只能存取其執行身分的使用者共用儲存體。

在具有多個共用/外部儲存體目錄的裝置中,此目錄代表使用者將與其互動的主要儲存體。 您可以透過 Context#getExternalFilesDirs(String)Context#getExternalCacheDirs()Context#getExternalMediaDirs() 存取次要儲存體。

應用程式不應該直接使用此最上層目錄,以避免使用者根命名空間出現問題。 應用程式私用的任何檔案都應該放在 所 android.content.Context#getExternalFilesDir Context.getExternalFilesDir 傳回的目錄中,如果卸載應用程式,系統會負責刪除。 其他共用檔案應該放在 所 #getExternalStoragePublicDirectory 傳回的其中一個目錄中。

寫入此路徑需要 android.Manifest.permission#WRITE_EXTERNAL_STORAGE 許可權,而且從 開始 android.os.Build.VERSION_CODES#KITKAT ,讀取權限需要 android.Manifest.permission#READ_EXTERNAL_STORAGE 許可權,如果您持有寫入權限,就會自動授與許可權。

android.os.Build.VERSION_CODES#KITKAT 開始,如果您的應用程式只需要儲存內部資料,請考慮使用 Context#getExternalFilesDir(String)Context#getExternalCacheDir()Context#getExternalMediaDirs() ,這不需要讀取或寫入的許可權。

此路徑可能會在平臺版本之間變更,因此應用程式應該只保存相對路徑。

以下是監視外部儲存體狀態的一般程式碼範例:

{

android.os.Environment.getExternalStorageDirectory() JAVA 檔。

此頁面的部分是根據所建立和共用的工作進行修改,並根據 2.5 屬性授權中所述的詞彙來使用。

適用於

另請參閱