Diese Frage quält uns und unsere Kunden seitdem Android Kitkat 4.4.2. auf Tabletts und Smartphones ausgeliefert bzw. upgegradet wurde. Nachdem für viele von Ihnen diese Frage noch immer nicht zufriedenstellend geklärt wurde haben wir uns entschlossen die ganze Problematik in diesen Blog-Beitrag zusammenzufassen. Wir hoffen damit Klarheit in die Angelegenheit zu bringen und ev. verärgerte Kunden besser zu unterstützen.
Alles funktionierte perfekt bis…
Bevor wir zum Kern der des Themas vorstoßen möchten wir einige Worte zur Geschichte von Locus Map verlieren. Locus Map koexistierte seit seiner ersten Version in vollkommener Harmonie mit Android. Es konnte vollständig und ohne jedwedes Problem auf die SD-Karte ausgelagert werden, weiters konnten auf der SD-Karte heruntergeladene Landkarten gespeicherter werden, POI’s und Tracks importiert werden, usw. Dieses perfekte Zusammenspiel wurde völlig unerwartet und ohne Ankündigung durch das Update auf Android 4.4.2 / Kitkat zerstört, eine wahrhaft bittere Süßigkeit. Diese Version von Android brachte eine Neuigkeit mit der niemand gerechnet hatte – massive Einschränkungen der Schreibrechte auf die SD-Karte für alle Applikationen. Begründung: Verbesserung der Sicherheit…
Von nun an konnte Locus Map nicht mehr auf die SD-Karte schreiben was speziell für das Herunterladen von SQLitedb Rasterkarten auf Grund ihrer Größe essentiell wäre. Es konnten weder Geocaches noch Vektorkarten oder SRTM Höhendaten gespeichert werden, ja nicht einmal Sicherungen konnten auf die SD-Karte geschrieben werden. Ohne jede Ankündigung wurde aus der SD-Karte ein nur lesbares Medium.
…und wir drifteten in ein Schlamassel.
Die Konsequenzen waren nahezu katastrophal. Locus Map, ein bisher in allen Funktionen absolut stabiles Programm, stürzte oft ab oder startete in machen Situationen erst gar nicht. Das Locus Team durchwachte einige schlaflose Nächte um schnell eine Lösung für unsere erzürnten Kunden zu finden – und wir fanden auch einige Wege um mit Kitkat leben zu können und schrieben darüber hier im Blog und in der Dokumentation. Glücklicherweise war es für den User immer noch möglich Daten händisch auf die SD-Karte zu kopieren – somit konnten große Kartenpakete per Dateimanager auf die SD-Karte kopiert und der Verzeichnispfad dorthin in den Einstellungen von Locus Map hinterlegt werden.
Android 5.0 – ein Funke Hoffnung
Android 4.4.4. brachte keinerlei Verbesserung der SD-Karten Problematik. Erst Android 5.0 brachte etwas frischen Wind: Es gestattete Locus Map den schreibenden Zugriff auf die SD-Karte – zumindest teilweise. Nun konnten die Ordner mit den Vektorkarten (MapsVector), SRTM-Daten (die Höhendaten die zB für die Kartenschattierung gebraucht werden – data/srtm) und Sicherungen (backup) in den Einstellungen von Locus Map auf die SD-Karte verschoben werden. Leider war es das aber auch schon, mehr geht unglücklicherweise immer noch nicht. Alles in allem haben wir eine volle Woche nach Möglichkeiten gesucht diese kuriose Idee von Google zu umschiffen. Somit empfehlen wir das Hauptverzeichnis von Locus Map (und somit das Programm selbst) im internen Speicher zu belassen – wie auch das Hauptverzeichnis für die Landkarten in dem Locus Map die heruntergeladenen Online Karten speichert. (die heruntergeladenen Karten können dann händisch auf die SD-Karte verschoben und als „externe Karten“ wieder in Locus eingebunden werden).
Android 5.0backupLocus Mapsd cardSRTM datavector maps
7 Comments
Zdravim, len sa chcem opytat ako je mozne ze file manager moze kopirovat na kartu
Dobrý den,
pokud to hodně zjednodušíme, file manager je pouze prostředek, který ke kopírování na kartu využívá přímo uživatel. Narozdíl od toho např. vytváření SQLitedb databáze mapy při stahování z online módu je operace čistě v režii aplikace samotné. Nicméně problematika je mnohem složitější, další info (v angličtině) získáte zde: http://www.chainfire.eu/articles/113/Is_Google_blocking_apps_writing_to_SD_cards_/ nebo zde: http://www.gottabemobile.com/2014/02/22/samsung-galaxy-s4-note-3-android-4-4-problem-hits-micro-sd-card/
Check Here maps. They can download to SD flawlessly.
You can use your package-specific directory, right? It is erased with uninstallation, but downloaded maps can be re-downloaded again after re-installation from the user account, right?
How often users uninstall your app compared to map downloads?
Optimize for the most common scenario, not the least.
Hello Indrik, "maps can be re-downloaded again after re-installation from the user account"... do you have any "User account" in Locus Map to store custom-downloaded maps? Unfortunately, not yet. We're working on it. Until it's done, you may use Here maps instead of Locus ;). Our current solution is optimized for our current options and background.
Nevertheless, you've written nothing new as we wrote about it 1,5 yrs ago here https://www.locusmap.app/locus-map-does-not-run-since-update-device-to-android-4-4-2-kitkat/#solutionB. Anyway, we don't recommend it in the latest blogpost because of the issue you mention as well - the folder is deleted during uninstall. Of course you are free to choose this method.
But you guarantee payed maps can be re-downloaded, right? At least for vector maps. It is not valid for other payed maps so if I pay for it and lost my phone, I will not be able to re-download the maps I payed for in Locus associated with the same account again?
I mean the Google account from which I downloaded the Locus. Vector maps are associated to that Google account, right? Or how does it work that I am able to re-download them?
LoMaps, i.e. Locus vector maps can be re-downloaded, that we can guarantee as we've got full control over these data and we store the purchase information. But not other purchases from other providers. In case of data (phone) loss the purchase has to be made again - information about the purchases from other providers nor the purchased data themselves aren't stored anywhere. We (Asamm Software) buy the map tiles from the provider and sell them. And we must pay for each single tile that is downloaded, therefore if you lose data, we can't re-download them for you for free.