OsmAnd-Kartenordner ändern erfolglos

  • 15 Antworten
  • Letztes Antwortdatum
A

Astra-Tom

Neues Mitglied
2
Hallo,
ich habe versucht den Datenordner zu ändern, um die Karten von OsmAnd~ (4.9.10) für OsmAnd (5.0.5) gemeinsam nutzen zu können.

Leider kommt dabei diese abgehackte Fehlermeldung:
Karten konnten im angegebenen Verzeichnis ni... (...cht verschoben werden, gelöscht werden, was auch immer?)

Was läuft hier schief?

Es wurde nichts verschoben.
Der Datenordner wurde nicht wie beabsichtigt von
Dieser PC\motorola edge 30 neo\Interner gemeinsamer Speicher\Android\data\net.osmand\files
in
Dieser PC\motorola edge 30 neo\Interner gemeinsamer Speicher\Android\data\net.osmand.plus\files
geändert.

Angesehen habe ich mir die Ordner per USB-Kabel und Win10-PC.

Wer kann mir dazu Hinweise oder Tips geben?
 
Zuletzt bearbeitet:
Probiere einen Ordner außerhalb von Android\data. Die App darf in fremde Ordner wahrscheinlich nicht reinschreiben.
 
  • Danke
Reaktionen: Astra-Tom
Ich habe deinen Vorschlag ausprobiert.
Mein neuer eingegebener Ordner heißt /storage/emulated/0/Android/maps/net.osmand/files
Aber es kam die gleiche Fehlermeldung wie oben erwähnt.
Der Ordner \Android\data\net.osmand\files wurde zwar erstellt aber es sind keine Dateien enthalten (vom PC aus gecheckt).
Nach Neustart von OsmAnd wird weiterhin der alte Ordner benutzt und die Karte von dort geladen.

Vom PC aus kann ich die Karten ohne Probleme dahin kopieren, wo ich sie hin haben will, nur sucht dann OsmAnd immer noch an der alten Stelle.
Kann ich eventuell eine Config-Datei manuell bearbeiten, um den Pfad auf den neuen Ordner hin zu "verbiegen"?
 
Zuletzt bearbeitet:
Und wenn du /storage/emulated/0/Osmand als Ordner nutzt? Zunächst mit der funktionierenden App verschieben und dann den Pfad bei der anderen eingeben. Wichtig ist, dass eine der Apps immer vollständig geschlossen sein muss, weil die andere sonst wahrscheinlich nicht reinschreiben kann.
 
  • Danke
Reaktionen: Astra-Tom
Die Fehlermeldung tritt auf, weil dieser Pfad noch im eingeschränkten /Android/-Bereich liegt, auf den Apps keinen Vollzugriff haben.
Verwende einen Ordner außerhalb des eingeschränkten Bereichs, z.B.:
/storage/emulated/0/Documents/OsmAnd_Maps/
 
  • Danke
Reaktionen: HaJoHausB und Astra-Tom
Danke, das Verschieben in den neuen Ordner hat funktioniert.

Ich habe jetzt folgenden Daten-Ordner eingetragen:
/storage/emulated/0/Documents/osmand/files
OsmAnd zeigt nach Neustart auch die Karten an.
So weit, so gut.


Dann habe ich OsmAnd~ gestartet und dort den Daten-Ordner genauso geändert.
Die Dateien wurde auch als verschoben angezeigt.
Aber nach erfolgtem Neustart von OsmAnd~ zeigt sich aber nur eine leere weiße Fläche statt einer Karte.

Vom PC aus habe ich folgendes kontrolliert:
  • Der neue gemeinsame Ordner Dieser PC\motorola edge 30 neo\Interner gemeinsamer Speicher\Documents\osmand\files enthält alle Karten. OK.
  • Der alte Ordner von OsmAnd von Dieser PC\motorola edge 30 neo\Interner gemeinsamer Speicher\Android\data\net.osmand\files enthält keine Karten mehr, alle Unterordner sind leer. OsmAnd funktioniert wie gewünscht. OK.
  • Der alte Ordner von OsmAnd~ von Dieser PC\motorola edge 30 neo\Interner gemeinsamer Speicher\Android\data\net.osmand.plus\files enthält noch einige Karten, unter Anderem die, wo ich mich gerade befinde. Eigentlich sollte die ja alle weg sein. Trotzdem kommt beim Start von OsmAnd~ nur der weiße Hintergrund und die Meldung:
Ausgewählter Bereich konnte nicht angezeigt werden.
Absturz.
Der letzte Start ist fehlgeschlagen.
 
Zuletzt bearbeitet:
Ich sehe im meinem Ordner nicht nur .obf-Dateien. Ich denke die Caches, .db-Files und was da sonst noch herumliegt haben für andere Programmversionen vollkommen unerwartete Inhalte.
 
Ja, das habe ich mir auch schon gedacht.
Ich hatte mal eine andere Navi/Karten-App (Orux?), da konnte man nur den Kartenordner separat vorgeben (z.B. auf SD verlagern). Bei OsmAnd scheinen da verschiedene Dateitypen im Datenordner zu sein, so daß es bei mehreren App-Versionen im Wechsel offenbar ein Durcheinander gibt.
Schade eigentlich.
 
Zuletzt bearbeitet:
Eigentlich ist es auch nicht vorgesehen, verschiedene Programmversionen parallel zu betreiben. Du könntest jedoch beim Osmand Support nachfragen. Vielleicht können die dir genaueres sagen.
Was du probieren könntest wären Symlinks. Also dass die Daten in deine Hauptversion sind und ein Symlink die Karten und Favoriten in die andere Version verlinkt. Auch hier sollten die Daten wieder außerhalb von Android/data liegen. Ob es funktioniert, weiß ich nicht. Es ist zudem sehr umständlich, da du jede Datei separat verlinken müsstest.
 
Das ist richtig.
Habe eben den Support angeschrieben.

"Symlink android" habe ich gegoogled, aber leider nichts verständliches gefunden.
Kannst Du mir bitte kurz erklären wie das funktioniert, oder einen Link posten, wo es erklärt wird?
 
Ich hab das unter Android noch nie gemacht und wie gesagt es ist umständlich und kompliziert. Daher würde ich dir nicht empfehlen, wenn du es nicht alleine hinbekommst.
 
  • Danke
Reaktionen: HaJoHausB
Ich beschreibe mal kurz, wie ich das mit den Links verstanden habe:
Die Links funktioneren vermutlich so wie die Links in Windows, wo man eine beliebige Datei verlinken kann, und dann beim Aufruf des Links wird einfach die verlinkte Datei geöffnet.

Dann würde ich so vorgehen:
1. Daten-Ordner der App 1 verlagern in einen allgemein Zugänglichen neuen Ordner (z.B. /android/documents/...). Die App 1 funktioniert danach wie gewohnt.
2. Alle Kartendateien im Datenordner der App 2 löschen und durch Links ersetzen auf die Karten im verschobenen Ordner der App 1. Die anderen Dateien im Datenordner der App 2 bleiben wie sie sind, der Datenordner-Pfad der App2 ebenfalls.

Ich sehe hier ein mögliches Problem:
Die Kartendatei hat vermutlich eine andere Dateiendung wie der erzeugte Link.
Beim Anklicken ist das wohl kein Problem, beim Aufruf in einer Programmzeile der App möglicherweise schon, wenn der Dateiname korrekt (komplett mit Endung) angegeben ist.

Mixplorer soll SymLinks erzeugen können, blöd nur, daß es eine Bezahl-App ist.
Edit: Ich glaube Mixplorer kann es doch nicht, jedenfalls habe ich die Funktionalität nicht gefunden...
 
Zuletzt bearbeitet:
Ich würde es lassen, denn du hast eine Windows-Brille auf. Mit
Code:
Process symlink = Runtime.getRuntime().exec("ln -s /pfad/zur/datei.endung /pfad/zum/symlink.endung");
und ausreichenden Berechtigungen kannst du einen Symlink auf Dateisystemebene erstellen. Und zwar nur da. Wenn das Dateisystem sowas nicht unterstützt (FAT, NFS, RFS) wird das nix. Android-Systeme wie EXT und YAFFS können das, und es ist so nervig in Einrichtung und Betrieb daß es aus gutem Grund ein Schattendasein führt.
 
  • Danke
Reaktionen: Astra-Tom
In der Regel ist die erzeugende App auch der Besitzer der Datei. Und nur die hat dann auch Zugriff darauf. Könnte durch die Ristrictionen von Google hier also auch der Fall sein.
 
  • Danke
Reaktionen: Astra-Tom
@Astra-Tom
Ein Symlink ist etwas anderes als eine .lnk Datei und funktioniert auch nicht mit allen Dateisystemen. Unter Windows wird das beispielsweise verwendet, um den Ordner "Program Files" als "Programme" anzeigen zu lassen. Oder auch "User" als "Benutzer".

Symbolische Verknüpfung – Wikipedia
 
  • Danke
Reaktionen: Astra-Tom
OK, dann funktioniert das so nicht.

Rückmeldung vom OsmAnd Support (KI/AI):

Sehr geehrter Herr ...,
ich bin OsmAnd AI Care. Vielen Dank für Ihre sehr detaillierte und technisch versierte Anfrage.
Ihre Analyse des Problems ist absolut korrekt. Wenn Sie den Datenordner für beide Apps (OsmAnd und OsmAnd~) auf denselben Pfad setzen, versuchen beide Installationen, auf dieselben Konfigurationsdateien (wie settings.xml, favourites.gpx etc.) zuzugreifen und diese zu überschreiben. Dies führt unweigerlich zu Datenkonflikten, Instabilität und den von Ihnen beschriebenen Abstürzen.
Zu Ihrer Hauptfrage: "Gibt es eine Möglichkeit, nur die Karten 'zu verlagern'?"
Innerhalb der OsmAnd-App gibt es derzeit leider keine eingebaute Funktion oder einfache Einstellung, um einen separaten Ordner nur für die Kartendateien (.obf Dateien) festzulegen, während die Konfigurationsdateien für jede App-Installation getrennt bleiben. Die Funktion "Datenspeicherordner" in den Einstellungen verschiebt immer den gesamten Daten-Container der App.
Erläuterung zu Ihrem PS (Fehlermeldungen): Ihre Beobachtung im PS ist ebenfalls richtig. Das Verschieben des Datenordners in den .../android/data-Bereich scheitert an den strengen Sicherheits- und Speicherzugriffsregeln neuerer Android-Versionen (Scoped Storage). Das Verschieben in einen öffentlichen Ordner wie .../documents/ funktioniert zwar von der Berechtigung her, führt dann aber zu dem von Ihnen erlebten Datenkonflikt zwischen den beiden Apps.
Die offiziell unterstützte Lösung:
Die einzige von uns offiziell unterstützte und stabile Methode ist daher, beide App-Installationen (OsmAnd und OsmAnd~) in ihren eigenen, getrennten Datenordnern zu betreiben. Dies bedeutet leider, dass die Kartendateien für jede App separat heruntergeladen werden müssen und somit doppelten Speicherplatz belegen. Wir verstehen, dass dies für Ihren Anwendungsfall nicht ideal ist.
Für technisch sehr versierte Nutzer:
Es gibt eine inoffizielle Methode, die von einigen Power-Usern verwendet wird, um Ihr Ziel zu erreichen: die Nutzung von "symbolischen Links" (symlinks) auf der Dateisystemebene von Android. Dabei würde man den maps-Unterordner in einem Datenverzeichnis durch einen symbolischen Link ersetzen, der auf einen gemeinsamen, zentralen Kartenordner verweist. Dies ist jedoch ein komplizierter Prozess, der von uns nicht unterstützt wird und je nach Gerät spezielle Werkzeuge oder erweiterte Rechte (Root) erfordern kann.
Ihr Wunsch nach einem separaten, konfigurierbaren Pfad nur für die Kartendateien ist jedoch ein sehr valider und intelligenter Vorschlag. Ich habe dies als Funktionswunsch für unser Entwicklungsteam notiert, da dies für Nutzer mit parallelen Installationen eine große Verbesserung wäre.
Es tut mir leid, dass ich Ihnen keine einfache Lösung per Knopfdruck anbieten kann. Ich hoffe, diese technische Erklärung hilft Ihnen dennoch weiter, die Situation zu verstehen.
MfG,
OsmAnd AI Care
Wenn die Antwort ohne menschliches Zutun so aus der KI kommt, Respekt! :1f44d:
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: HaJoHausB

Ähnliche Themen

U
Antworten
6
Aufrufe
142
uwe75
U
T
Antworten
17
Aufrufe
475
schnueppi
schnueppi
M
Antworten
5
Aufrufe
381
mawoas
M
JochenB
Antworten
11
Aufrufe
447
JochenB
JochenB
G
Antworten
1
Aufrufe
296
JochenB
JochenB
Zurück
Oben Unten