WhereYouGo icon indicating copy to clipboard operation
WhereYouGo copied to clipboard

Ease onboarding process: Automatically use offline map path from c:geo (if available)

Open moving-bits opened this issue 4 years ago • 7 comments

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.

moving-bits avatar Apr 12 '20 09:04 moving-bits

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?)

bekuno avatar Apr 13 '20 08:04 bekuno

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...

moving-bits avatar Apr 13 '20 09:04 moving-bits

This is a very good idea! Thanks for your work!

JakeDot avatar Apr 13 '20 11:04 JakeDot

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

steve8x8 avatar Apr 27 '20 11:04 steve8x8

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.

moving-bits avatar Apr 27 '20 18:04 moving-bits

The filename is surely unreliable...

JakeDot avatar Apr 28 '20 23:04 JakeDot

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.

moving-bits avatar Apr 29 '20 09:04 moving-bits