Discussion:
Datei-Pfade zur SD-Karte
(zu alt für eine Antwort)
Martin Τrautmann
2017-08-02 07:15:18 UTC
Permalink
Hallo,

kann mir jemand erklären, was das Grundprinzip der Dateipfade auf
Android ist?

Ich habe hier z.B. eine App wie osmand, die mehrere GB große Dateien
nutzt. Die sollen auf der externen SD-Karte lagern.

Eigentlich würde ich nun erwarten, dass Android einen zumindest
rudimentären file manager anbietet, mit dem ich den Speicherplatz
lokalisieren könnte.

Oder wenn ich ihn schon manuell eingeben muss, dann ein halbwegs
plausibler Pfad wie /sdcard/osmand/ - oder von mir aus sogar irgendswas
unixoides wie /ext/sd2/, /mnt/sd0-1/ usw. Aber mit z.B. Astro finde ich
nicht einmal den tatsächlichen Dateipfad heraus, geschweige denn dass
ich ihn mit copy/paste in eine manuelle Pfad-Eingabe einfügen könnte.

Nein, auf einen Pfad wie
/storage/6163-3530/Android/data/net.osmand.plus/files
komme ich nicht wirklich von alleine.

Ist es tatsächlich sogar Absicht von Android, Dateipfade möglichst vor
dem Benutzer zu verstecken? Oder übersehe ich hier etwas
offensichtliches und triviales?

...ist ja nicht so, dass mir das Wissen bei der einen Android-Version
mit der nächsten genauso helfen würde. Das scheint wohl beliebig
zwischen Android-Grund-Versionen und Hersteller-Krüppel-Varianten
wechseln zu können.

Schönen Gruß
Martin
Jochen Spieker
2017-08-02 11:32:30 UTC
Permalink
Post by Martin Τrautmann
kann mir jemand erklären, was das Grundprinzip der Dateipfade auf
Android ist?
Ich leider nicht.
Post by Martin Τrautmann
Ich habe hier z.B. eine App wie osmand, die mehrere GB große Dateien
nutzt. Die sollen auf der externen SD-Karte lagern.
Dazu brauchst Du keinen Blick ins Dateisystem werfen. Das kannst Du in
den Einstellungen von osmand auswählen. Bei mir wird da auch der Pfad
angezeigt. Ich habe aber kein Telefon mit separater SD-Karte.
Post by Martin Τrautmann
Eigentlich würde ich nun erwarten, dass Android einen zumindest
rudimentären file manager anbietet, mit dem ich den Speicherplatz
lokalisieren könnte.
Oder wenn ich ihn schon manuell eingeben muss,
Deine Erwartungshaltung entspricht nicht dem, was Android bietet. Die
Designer von Android haben schlicht nicht vorgesehen, dass ein normaler
Nutzer mit so etwas technischem wie einem Pfad konfrontiert wird.

Ich fand das auch lange befremdlich. Auf der anderen Seite sehe ich auch
seit Jahrzehnten, wie überfordert normale Nutzer mit Dateisystemen sind.
Insofern kann ich es verstehen.
Post by Martin Τrautmann
Ist es tatsächlich sogar Absicht von Android, Dateipfade möglichst vor
dem Benutzer zu verstecken?
Ja, und das wahrscheinlich von Anfang an.
Post by Martin Τrautmann
...ist ja nicht so, dass mir das Wissen bei der einen Android-Version
mit der nächsten genauso helfen würde. Das scheint wohl beliebig
zwischen Android-Grund-Versionen und Hersteller-Krüppel-Varianten
wechseln zu können.
Jein. Grundsätzliches ändert sich jetzt nicht direkt ständig, aber es
gab schon große Änderungen, gerade was die Einbindung von externem
Speicher angeht.

J.
--
I have been manipulated and permanently distorted.
[Agree] [Disagree]
<http://archive.slowlydownward.com/NODATA/data_enter2.html>
Michael Limburg
2017-08-02 13:43:50 UTC
Permalink
Martin Τrautmann wrote:

Hallo
Post by Martin Τrautmann
Nein, auf einen Pfad wie
/storage/6163-3530/Android/data/net.osmand.plus/files
komme ich nicht wirklich von alleine.
Ein Linux hätte als Pfad z.B. /media/6163-3530/.. oder
/media/$USERNAME/6163-3530/.. angelegt. Ob nun unter
"/storage" oder "/media" gemountet wird, naja, ist doch
egal. Die Zahl im Pfad dürfteI MHO aus Deiner SD-Karte
ausgelesen sein.
Post by Martin Τrautmann
Ist es tatsächlich sogar Absicht von Android, Dateipfade möglichst vor
dem Benutzer zu verstecken? Oder übersehe ich hier etwas
offensichtliches und triviales?
Natürlich wollen moderne OS vermeiden, daß Benutzer mit
solchen Organisationsdingen wie Pfaden in Berührung kommen
(müssen). Die überwiegende Zahl der Smartphonebenutzer
wird nicht mal wissen, was ein Dateipfad ist. Dumm ist
halt, wenn man den Pfad auf Grund hardwaretechnicher
Unzulänglichkeiten (mangelder Speicherplatz) wissen
möchte.

MfG
Gerald Gruner
2017-08-02 16:39:26 UTC
Permalink
Post by Martin Τrautmann
kann mir jemand erklären, was das Grundprinzip der Dateipfade auf
Android ist?
Sehr linux-ähnlich, s.u.
Allerdings verbirgt es im Regelfall Pfade und andere Konfigurationsdaten
vor dem Nutzer. Das tun andere OS (Windows, Linux, ...) allerdings auch und
setzen beim typischen Installationsprozess sinnvolle Defaults.
Für den interessierten Nutzer gibt es natürlich auch in Android diverse
Filemanager-Apps.
Post by Martin Τrautmann
[...]
Nein, auf einen Pfad wie
/storage/6163-3530/Android/data/net.osmand.plus/files
komme ich nicht wirklich von alleine.
Ist es tatsächlich sogar Absicht von Android, Dateipfade möglichst vor
dem Benutzer zu verstecken? Oder übersehe ich hier etwas
offensichtliches und triviales?
Du hast deine SD-Karte vermutlich nicht benannt und so wird die ID
"6163-3530" als Bezeichnung genommen. Benenne sie z.B. als "sdcard" und der
Pfad sieht gleich freundlicher aus. (Ich kenne allerdings deine
Android-Version nicht. Vielleicht nimmt deine immer die ID.)
Probier's einfach mal...

Genau das könnte dir auch bei Linux-Systemen passieren. Mein (unbenannter)
USB-Stick hat z.B. den Pfad "/media/user/5EA0-0482". Und wenn dort
irgendwelche Systemdaten abgelegt würden, wäre ein Pfad wie
"./system/applikation/files" auch nichts ungewöhnliches, oder?
Jetzt schau dir nochmal deinen Pfad oben an...
Vielleicht ist Android ja doch nicht soooo anders. ;-)

Hinweis: Bei mir muss man in Osmand den Pfad nicht explizit angeben,
sondern kann den Speicherort (intern, extern ...) aus einer Liste wählen.
Dort könntest du auch einen optisch schöneren Wunschpfad manuell eingeben.
Nur wozu?

MfG
Gerald, hoffend nicht auch diese Diskussion durch Fakten gekillt
zu habend
--
No trees were killed in the sending of this message. However
a large number of electrons were terribly inconvenienced.
Martin Τrautmann
2017-08-02 17:56:44 UTC
Permalink
Post by Gerald Gruner
Post by Martin Τrautmann
kann mir jemand erklären, was das Grundprinzip der Dateipfade auf
Android ist?
Sehr linux-ähnlich, s.u.
Allerdings verbirgt es im Regelfall Pfade und andere Konfigurationsdaten
vor dem Nutzer. Das tun andere OS (Windows, Linux, ...) allerdings auch und
setzen beim typischen Installationsprozess sinnvolle Defaults.
sinnvoll für irgend jemand sicher. Warum z.B. das Zwischenverzeichnis
/Android/ eingeschoben wird, die wissen sicher warum.
Post by Gerald Gruner
Für den interessierten Nutzer gibt es natürlich auch in Android diverse
Filemanager-Apps.
Dann brauche ich eine bessere als Astro - wobei eben bei mir copy/paste
von Dateipfaden nicht geht und man nicht zwei Fenster neben einander
hat, um den Dateipfad vom einen abzulesen und ins andere einzugeben.
Post by Gerald Gruner
Post by Martin Τrautmann
Nein, auf einen Pfad wie
/storage/6163-3530/Android/data/net.osmand.plus/files
komme ich nicht wirklich von alleine.
Du hast deine SD-Karte vermutlich nicht benannt und so wird die ID
"6163-3530" als Bezeichnung genommen.
Vermutlich hatte ich sie auf dem Mac durchaus benannt, aber das juckt
das Gerät nicht. Wahrscheinlicher ist dass ich sie nochmals im Gerät
formatiert hatte und dabei keine Möglichkeit zur Benennung geboten wird.
Post by Gerald Gruner
Genau das könnte dir auch bei Linux-Systemen passieren. Mein (unbenannter)
USB-Stick hat z.B. den Pfad "/media/user/5EA0-0482". Und wenn dort
irgendwelche Systemdaten abgelegt würden, wäre ein Pfad wie
"./system/applikation/files" auch nichts ungewöhnliches, oder?
Jetzt schau dir nochmal deinen Pfad oben an...
Vielleicht ist Android ja doch nicht soooo anders. ;-)
Den Pfad unter Linux kann ich mir wenigstens anzeigen lassen. Auf
Android brauche ich dafür Zusatz-Apps.
Post by Gerald Gruner
Hinweis: Bei mir muss man in Osmand den Pfad nicht explizit angeben,
sondern kann den Speicherort (intern, extern ...) aus einer Liste wählen.
Dort könntest du auch einen optisch schöneren Wunschpfad manuell eingeben.
Weil ich das Verzeichnis am liebsten oben auf meiner SD Card hätte - ein
fettes Verzeichnis für osmand Karten, ein fettes für die Kiwix Dateien.

Dann kann ich leichter sortieren und herausfinden, wo in den anderen
sich Monsterdateien verbergen - z.B. weil versehentlich die Kamera ein
In-Der-Hosentasche-Video drehte.
Post by Gerald Gruner
Nur wozu?
Weil die Vorgabe oben mir nicht wirklich offenischtlich erschien. Warum
/Android/? Warum net.osmand.plus? /sdcard/osmand wäre für mich viel
aufgeräumter.

Selbst Microsoft hat irgendwann mal einen Explorer geschaffen, wo man
früher irgendwelche DOS Tools brauchte, um halbwegs interaktiv
herumwandern zu können. Dass man unter Android Dateipfade auswendig
wissen muss, das ist ja noch schlimmer als DOS - und ich war schon
damals von meinem Mac Classic anderes gewöhnt.

Nein, bei Pfadeingaben würde ich halt einen im System integrierten,
zumindest rudimentären file manager erwarten. Das wäre mir wichtiger als
diese Packung vorinstallierter Apps, die ich nie nutze, die mir aber
immer wieder mal das System blockieren (wie nebenan erwähnt: Der Prozess
google.maps reagiert nicht. [Warten]/[Beenden]. Dabei habe ich Maps in x
Jahren noch nie benutzt.)

Und ja, bei Osmand Plus kann man manuell eingeben, auf welchem Pfad die
Daten gespeichert werden sollen.

Zur Wahl habe ich
o Gemeinsamer Speicher
/storage/emulated/0/osmand
o Externer Speicher 1
/storage/emulated/0/Android/data/net.osmand.plus/files
o Externer Speicher 2
/storage/6163-3530/Android/data/net.osmand.plus/files
o Mehrbenutzer-Speicher 1
/storage/emulated/0/Android/obb/net.osmand.plus/
o Mehrbenutzer-Speicher 2
/storage/6163-3530/Android/obb/net.osmand.plus/
o Interner Anwendungsspeicher
/data/user/0/net.osmand.plus/no_backup
o Manuell spezifiziert...
(gibt's das nur in osmand plus, nicht in der freeware?)

Ich lerne also: 0 ist intern, auch wenn er als extern gelisted wird.
obb hat irgendwas mit Mehrbenutzer zu tun und landet entweder intern
oder extern. Und für den internen Anwendungsspeicher wird das in
no_backup gespeichert, wo sonst mal eine Zwichenebene /files/
eingeschoben wird, mal nicht.

Ja, da steckt sicher irgend eine Logik dahinter. Aber nichts davon kommt
meinem Wunschpfad /sdcard/osmand/ auch nur nahe.

Schönen Gruß
Martin
Gerald Gruner
2017-08-02 19:17:02 UTC
Permalink
Post by Martin Τrautmann
Post by Martin Τrautmann
kann mir jemand erklären, was das Grundprinzip der Dateipfade auf
Android ist?
Sehr linux-ähnlich, s.u. Allerdings verbirgt es im Regelfall Pfade und
andere Konfigurationsdaten vor dem Nutzer. Das tun andere OS (Windows,
Linux, ...) allerdings auch und setzen beim typischen
Installationsprozess sinnvolle Defaults.
sinnvoll für irgend jemand sicher. Warum z.B. das Zwischenverzeichnis
/Android/ eingeschoben wird, die wissen sicher warum.
Weil's IMHO durchaus sinnvoll ist, um zu kennzeichnen, dass es um für
Adroid-Apps relevante Verzeichnisse geht. Aber du KANNST bei Osmand doch
auch einen Pfad manuell eingeben.
Post by Martin Τrautmann
Für den interessierten Nutzer gibt es natürlich auch in Android diverse
Filemanager-Apps.
Dann brauche ich eine bessere als Astro - wobei eben bei mir copy/paste
von Dateipfaden nicht geht und man nicht zwei Fenster neben einander
hat, um den Dateipfad vom einen abzulesen und ins andere einzugeben.
Ich habe hier den ES-Explorer, der inzwischen leider ziemlich fett geworden
ist, aber zumindest kann der auch Pfade kopieren und Osmand kann Pfade
einfügen.
Post by Martin Τrautmann
Post by Martin Τrautmann
Nein, auf einen Pfad wie
/storage/6163-3530/Android/data/net.osmand.plus/files
komme ich nicht wirklich von alleine.
Du hast deine SD-Karte vermutlich nicht benannt und so wird die ID
"6163-3530" als Bezeichnung genommen.
Vermutlich hatte ich sie auf dem Mac durchaus benannt, aber das juckt
das Gerät nicht. Wahrscheinlicher ist dass ich sie nochmals im Gerät
formatiert hatte und dabei keine Möglichkeit zur Benennung geboten wird.
Dann nimmt dein Android wohl immer eine ID. Es ist eigentlich auch egal, da
der Pfad ohnehin nur von der App gebraucht wird und für den Nutzer (außer
seiner Neugier) kaum Bedeutung hat.
Post by Martin Τrautmann
Genau das könnte dir auch bei Linux-Systemen passieren. Mein (unbenannter)
USB-Stick hat z.B. den Pfad "/media/user/5EA0-0482". Und wenn dort
irgendwelche Systemdaten abgelegt würden, wäre ein Pfad wie
"./system/applikation/files" auch nichts ungewöhnliches, oder?
Jetzt schau dir nochmal deinen Pfad oben an...
Vielleicht ist Android ja doch nicht soooo anders. ;-)
Den Pfad unter Linux kann ich mir wenigstens anzeigen lassen. Auf
Android brauche ich dafür Zusatz-Apps.
Auch bei Linux sind die Dateimanager nur Applikationen. Meist ist einer
davon als Default vorhanden, aber du kannst verschiedene installieren.
Mein Android hat übrigens einen Default-Dateimanager, der sich "Eigene
Dateien" nennt.
Post by Martin Τrautmann
Hinweis: Bei mir muss man in Osmand den Pfad nicht explizit angeben,
sondern kann den Speicherort (intern, extern ...) aus einer Liste wählen.
Dort könntest du auch einen optisch schöneren Wunschpfad manuell eingeben.
Weil ich das Verzeichnis am liebsten oben auf meiner SD Card hätte - ein
fettes Verzeichnis für osmand Karten, ein fettes für die Kiwix Dateien.
Dann tu's doch: Osmand->Einstellungen->allgemein->Datenordner
Post by Martin Τrautmann
Dann kann ich leichter sortieren und herausfinden, wo in den anderen
sich Monsterdateien verbergen - z.B. weil versehentlich die Kamera ein
In-Der-Hosentasche-Video drehte.
Nur wozu?
Weil die Vorgabe oben mir nicht wirklich offenischtlich erschien. Warum
/Android/? Warum net.osmand.plus? /sdcard/osmand wäre für mich viel
aufgeräumter.
Das Namensschema ist wohl für alle Apps vorgegeben, was IMHO sinn macht, um
"Kraut und Rüben" der Programmierer zu begrenzen. Du hast da persönliche
Abneigungen? Dann gib halt einen anderen Datenpfad ein.

[...]
Post by Martin Τrautmann
Ja, da steckt sicher irgend eine Logik dahinter.
In jedem OS gibt es ein bestimmtes Verzeichnisschema, das man nur mit Mühe
umbiegen kann.
Post by Martin Τrautmann
Aber nichts davon kommt meinem Wunschpfad /sdcard/osmand/ auch nur nahe.
Dann wirst du dir wohl dein eigenes OS programmieren müssen.
Ich glaube leider nicht, dass Android sowas wie Hardlinks beherrscht.
Viel Spaß...

MfG
Gerald
--
No trees were killed in the sending of this message. However
a large number of electrons were terribly inconvenienced.
Joerg Lorenz
2017-08-02 23:38:12 UTC
Permalink
Post by Martin Τrautmann
Den Pfad unter Linux kann ich mir wenigstens anzeigen lassen. Auf
Android brauche ich dafür Zusatz-Apps.
Nochmal: Deine Desktop-Denke ist nicht konzeptkonform. Solche Mickey
Mouse-Geräte sind für eine solche Nutzung nicht vorgesehen.
Post by Martin Τrautmann
Weil die Vorgabe oben mir nicht wirklich offenischtlich erschien. Warum
/Android/? Warum net.osmand.plus? /sdcard/osmand wäre für mich viel
aufgeräumter.
Auf Android-Geräten ist das ein semantisches Problem
Post by Martin Τrautmann
Selbst Microsoft hat irgendwann mal einen Explorer geschaffen, wo man
früher irgendwelche DOS Tools brauchte, um halbwegs interaktiv
herumwandern zu können. Dass man unter Android Dateipfade auswendig
wissen muss, das ist ja noch schlimmer als DOS - und ich war schon
damals von meinem Mac Classic anderes gewöhnt.
Wie gesagt: Desktop-Denke ohne Bezug zu Android.
Und dann nimm wenigstens einen richtigen Dateiexplorer auf Android. Ich
habe diverse ausprobiert allerdings schon vor einer Weile. Bei mir
gammelt immer noch der EF-Explorer herum, der allerdings in der
unbezahlten Version viele Dinge machen will, die man nicht in den
wildesten Träumen seinem Gerät antun will.
--
De gustibus non est disputandum
Arno Welzel
2017-08-02 17:19:54 UTC
Permalink
Post by Martin Τrautmann
Hallo,
kann mir jemand erklären, was das Grundprinzip der Dateipfade auf
Android ist?
Ich habe hier z.B. eine App wie osmand, die mehrere GB große Dateien
nutzt. Die sollen auf der externen SD-Karte lagern.
Eigentlich würde ich nun erwarten, dass Android einen zumindest
rudimentären file manager anbietet, mit dem ich den Speicherplatz
lokalisieren könnte.
Oder wenn ich ihn schon manuell eingeben muss, dann ein halbwegs
plausibler Pfad wie /sdcard/osmand/ - oder von mir aus sogar irgendswas
unixoides wie /ext/sd2/, /mnt/sd0-1/ usw. Aber mit z.B. Astro finde ich
nicht einmal den tatsächlichen Dateipfad heraus, geschweige denn dass
ich ihn mit copy/paste in eine manuelle Pfad-Eingabe einfügen könnte.
Nein, auf einen Pfad wie
/storage/6163-3530/Android/data/net.osmand.plus/files
komme ich nicht wirklich von alleine.
Musst Du auch nicht. OSMAnd bietet Dir den Pfad in den aktuellen
Versionen einfach zur Auswahl als "External Storage" oder "EXternal
Storage 2" an, je nach Android-Version auch über einen Auswahl-Dialog,
der das Document-Storage-API nutzt.
Post by Martin Τrautmann
Ist es tatsächlich sogar Absicht von Android, Dateipfade möglichst vor
dem Benutzer zu verstecken? Oder übersehe ich hier etwas
offensichtliches und triviales?
Nein, das ist keine Absicht, sondern "historisch gewachsen", weil halt
jeder Hersteller hier selber rumfrickelt.

Es gibt aber schon seit Android 4 eine offizielle API genau für solche
Fragen, die aber eben auch von den Apps genutzt werden muss.
Post by Martin Τrautmann
...ist ja nicht so, dass mir das Wissen bei der einen Android-Version
mit der nächsten genauso helfen würde. Das scheint wohl beliebig
zwischen Android-Grund-Versionen und Hersteller-Krüppel-Varianten
wechseln zu können.
Korrekt.
--
Arno Welzel
https://arnowelzel.de
https://de-rec-fahrrad.de
http://fahrradzukunft.de
Loading...