Environment.ExternalStorageDirectory Eigenschaft

Definition

Gibt das primäre freigegebene/externe Speicherverzeichnis zurück.

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

Eigenschaftswert

Attribute

Hinweise

Gibt das primäre freigegebene/externe Speicherverzeichnis zurück. Auf dieses Verzeichnis kann derzeit nicht zugegriffen werden, wenn es vom Benutzer auf dem Computer bereitgestellt, vom Gerät entfernt wurde oder ein anderes Problem aufgetreten ist. Sie können den aktuellen Zustand mit #getExternalStorageState()bestimmen.

<em>Hinweis: Lassen Sie sich hier nicht durch das Wort "extern" verwirren. Dieses Verzeichnis kann besser als Medien-/freigegebener Speicher betrachtet werden. Es handelt sich um ein Dateisystem, das eine relativ große Menge an Daten enthalten kann und für alle Anwendungen freigegeben wird (keine Berechtigungen erzwingt). Traditionell handelt es sich dabei um eine SD-Karte, aber es kann auch als integrierter Speicher in einem Gerät implementiert werden, das sich vom geschützten internen Speicher unterscheidet und als Dateisystem auf einem Computer eingebunden werden kann.</Em>

Auf Geräten mit mehreren Benutzern (wie von UserManagerbeschrieben) verfügt jeder Benutzer über einen eigenen isolierten freigegebenen Speicher. Anwendungen haben nur Zugriff auf den freigegebenen Speicher für den Benutzer, als den sie ausführen.

Auf Geräten mit mehreren freigegebenen/externen Speicherverzeichnissen stellt dieses Verzeichnis den primären Speicher dar, mit dem der Benutzer interagiert. Der Zugriff auf den sekundären Speicher ist über Context#getExternalFilesDirs(String), Context#getExternalCacheDirs()und Context#getExternalMediaDirs()verfügbar.

Anwendungen sollten dieses Verzeichnis der obersten Ebene nicht direkt verwenden, um zu vermeiden, dass der Stammnamespace des Benutzers verschmutzen wird. Alle Dateien, die für die Anwendung privat sind, sollten in einem von android.content.Context#getExternalFilesDir Context.getExternalFilesDirzurückgegebenen Verzeichnis platziert werden, das vom System gelöscht wird, wenn die Anwendung deinstalliert wird. Andere freigegebene Dateien sollten in einem der verzeichnisse platziert werden, die von zurückgegeben werden #getExternalStoragePublicDirectory.

Für das Schreiben in diesen Pfad ist die android.Manifest.permission#WRITE_EXTERNAL_STORAGE Berechtigung erforderlich, und ab android.os.Build.VERSION_CODES#KITKATerfordert lesezugriff die android.Manifest.permission#READ_EXTERNAL_STORAGE Berechtigung, die automatisch gewährt wird, wenn Sie über die Schreibberechtigung verfügen.

android.os.Build.VERSION_CODES#KITKATWenn Ihre Anwendung nur interne Daten speichern muss, sollten Sie ab in Erwägung ziehen, , Context#getExternalCacheDir()oder Context#getExternalMediaDirs()zu verwendenContext#getExternalFilesDir(String), für die keine Lese- oder Schreibberechtigungen erforderlich sind.

Dieser Pfad kann sich zwischen Plattformversionen ändern, sodass Anwendungen nur relative Pfade beibehalten sollten.

Im Folgenden finden Sie ein Beispiel für typischen Code zum Überwachen des Zustands des externen Speichers:

{

Java-Dokumentation für android.os.Environment.getExternalStorageDirectory().

Teile dieser Seite sind Änderungen, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In Attribution License beschriebenen Begriffen verwendet werden.

Gilt für:

Weitere Informationen