Environment.ExternalStorageDirectory Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
Der Wert des externen Speicherverzeichnisses.
- Attribute
Hinweise
Gibt das primäre freigegebene/externe Speicherverzeichnis zurück. Auf dieses Verzeichnis kann möglicherweise nicht zugegriffen werden, wenn es vom Benutzer auf dem Computer bereitgestellt wurde, vom Gerät entfernt wurde oder ein anderes Problem aufgetreten ist. Sie können den aktuellen Zustand mit #getExternalStorageState().
<em>Hinweis: Verwechseln Sie hier nicht mit dem Wort "extern". Dieses Verzeichnis kann besser als Medien-/freigegebener Speicher betrachtet werden. Es handelt sich um ein Dateisystem, das eine relativ große Datenmenge enthalten kann und für alle Anwendungen freigegeben wird (erzwingt keine Berechtigungen). Dies ist traditionell eine SD-Karte, kann aber auch als integrierter Speicher in einem Gerät implementiert werden, das sich vom geschützten internen Speicher unterscheidet und als Dateisystem auf einem Computer bereitgestellt werden kann.</em>
Auf Geräten mit mehreren Benutzern (wie beschrieben UserManager) verfügt jeder Benutzer über einen eigenen isolierten freigegebenen Speicher. Anwendungen haben nur Zugriff auf den freigegebenen Speicher für den Benutzer, auf den er ausgeführt wird.
Auf Geräten mit mehreren freigegebenen/externen Speicherverzeichnissen stellt dieses Verzeichnis den primären Speicher dar, mit dem der Benutzer interagiert. Der Zugriff auf sekundären Speicher ist über Context#getExternalFilesDirs(String), Context#getExternalCacheDirs()und Context#getExternalMediaDirs().
Anwendungen sollten dieses Verzeichnis der obersten Ebene nicht direkt verwenden, um zu vermeiden, dass der Stammnamespace des Benutzers verunreinigt wird. Alle Dateien, die privat für die Anwendung sind, sollten in einem Verzeichnis abgelegt werden, von android.content.Context#getExternalFilesDir Context.getExternalFilesDirdem das System beim Deinstallieren der Anwendung gelöscht wird. Andere freigegebene Dateien sollten in einem der von ihnen zurückgegebenen #getExternalStoragePublicDirectoryVerzeichnisse abgelegt werden.
Für das Schreiben in diesen Pfad ist die android.Manifest.permission#WRITE_EXTERNAL_STORAGE Berechtigung erforderlich, und der android.os.Build.VERSION_CODES#KITKATLesezugriff erfordert die android.Manifest.permission#READ_EXTERNAL_STORAGE Berechtigung, die automatisch erteilt wird, wenn Sie die Schreibberechtigung besitzen.
Beginnend mit android.os.Build.VERSION_CODES#KITKAT, wenn Ihre Anwendung nur interne Daten speichern muss, erwägen Sie die Verwendung Context#getExternalFilesDir(String), Context#getExternalCacheDir()oder Context#getExternalMediaDirs(), die keine Berechtigungen zum Lesen oder Schreiben erfordern.
Dieser Pfad kann sich zwischen Plattformversionen ändern, sodass Anwendungen nur relative Pfade beibehalten sollten.
Nachfolgend sehen 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 auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.