WhereYouGo
WhereYouGo copied to clipboard
Ease onboarding process: Automatically use offline map path from c:geo (if available)
While working on c:geo issues https://github.com/cgeo/cgeo/issues/8180 and https://github.com/cgeo/cgeo/issues/7663 an idea came to my mind which I would like to discuss:
Onboarding WhereYoGo with using an offline map source is a troublesome action for WhereYouGo users (as well as it is in c:geo), as it requires finding the correct map file, downloading it, moving it to a place reachable by WhereYouGo and setting the map path in WhereYouGo accordingly.
We could implement something similar to https://github.com/cgeo/cgeo/issues/8180 for WhereYouGo as well, but that would lead to the same artifacts as we already have in c:geo (as described in this issue: https://github.com/cgeo/cgeo/issues/7663).
A solution for users of both c:geo and WhereYouGo could be, that WhereYouGo requests the map path set in c:geo "under the hood" and uses it for itself (using an intent).
- If c:geo is not installed => nothing happens
- If c:geo is installed and no offline map path is set => nothing happens
- If c:geo is installed and offline map path is set => use this for WhereYouGo as well
- No user interaction necessary at all.
- Do this on every start of WhereYouGo, as long as no offline map path is set in WhereYouGo.
- Manually overriding this path in WhereYouGo is always possible.
Maybe we should also add a button "read folder from c:geo" if a path was manually set but the user wants to change.
WhereYouGo only supports v3 maps. Is this covert somehow? (Or - can you implement the support for maps >v3?)
Maybe we should also add a button "read folder from c:geo" if a path was manually set but the user wants to change.
Good idea, will add it to the map menu.
WhereYouGo only supports v3 maps. Is this covert somehow?
Yes - WhereYouGo checks file version on opening the map file. If it's an unsupported version, the file is ignored.
(Or - can you implement the support for maps >v3?)
I gave it a quick shot with changing the gradle files, but compiling ran into many, many errors. Looking at the changelogs of Mapsforge it has been sort of a complete rewrite since v0.3, with many severe structural changes. That's out of reach for me...
This is a very good idea! Thanks for your work!
20200308 doesn't directly support Mapsforge v4 offline maps ("unsupported file version: 4"), I've got to use Locus. The request for MapsForge v4 support seems to be a duplicate of #15 & #73 - indeed, with c:geo having full v4 support now, WYG should get it too nudge nudge
Implementing Mapsforge 4+ support in WhereYouGo means rewriting a major part of the program - only for the brave, and not in the short run, possibly.
WhereYouGo should check the file(name) received from c:geo for a version fit and output a message, if needed. I'll create an issue for that.
The filename is surely unreliable...
WhereYouGo does not depend on the filename in this case, it already checks the map file version on acquiring the file(name) from c:geo. PR #168 now additionally delivers the info message to the user in case of error.