wake-up-neo.com

unterschiede zwischen/sdcard/emulated/0 und/sdcard

Ich bin sauer auf ein seltsames Thema. Wenn ich einen Ordner in meinem Code als

directory_path = Environment.getExternalStorageDirectory()
                + "/" + context.getResources().getString(R.string.app_name);

directory = new File(directory_path);
if (!directory.exists()) {
    directory.mkdirs();
}

in/sdcard/wird ein neuer Ordner erstellt. Wenn ich versuche, die Datei logcat directory_path zu drucken, ist der Pfad anders: /storage/emulated/0/[.____.(. Und wenn ich zu diesem Pfad gehe, habe ich einen anderen Ordner mit dem gleichen Namen wie dem auf/sdcard erstellten gefunden /. Dies ist ein Problem für mich, denn wenn ich versuche, Daten in diesen Ordner zu schreiben, geht alleding in das Verzeichnis/storage/emulated/0, und das andere (das ist der Ordner, den ich verwenden möchte) bleibt leer. Warum?

12
giozh

Haben Sie versucht, die Daten zurückzulesen?/storage/emulated/0/ist der neue Pfad, der in JB eingeführt wurde, um mehrere Benutzer auf dem Tablet zu unterstützen. Solange Sie mit Environment.getExternalStorageDirectory() auf externe Dateien zugreifen, spielt es keine Rolle, wo sie sich tatsächlich befinden. 

Hier einige zusätzliche Informationen: https://Android.stackexchange.com/questions/35541/why-did-sdcard-turn-into-sdcard-0-with-4-2

4
Kai

/ storage/emulated/0 /: Meines Wissens bezieht sich dies auf die "emulierte MMC" ("Besitzerteil"). Normalerweise ist dies die interne. Die "0" steht für den Benutzer Für den Benutzer hier, "0" ist der erste Benutzer, der als Geräteinhaber bezeichnet wird. Wenn Sie Zusätzliche Benutzer erstellen, erhöht sich diese Anzahl für jeden.

/ storage/emulated/legacy/wie zuvor, zeigt jedoch auf den Teil des , der gerade arbeitet (für den Eigentümer wäre dies ein Symlink zu 

/ Speicher/emuliert/0 /). Dieser Pfad sollte also jeden Benutzer zu seinem "Teil" bringen.

/ sdcard /: Laut einem Kommentar von Shywim ist dies ein Symlink zu ...

/ mnt/sdcard (Android <4.0)

/ Speicher/SD-Karte0 (Android 4.0 und höher)

Für weitere Informationen besuchen Sie stackexchange

0
duggu