Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

offline maps #122

Closed
azrdev opened this issue Apr 14, 2017 · 56 comments
Closed

offline maps #122

azrdev opened this issue Apr 14, 2017 · 56 comments
Labels
blocked blocked by another issue enhancement

Comments

@azrdev
Copy link

azrdev commented Apr 14, 2017

This is a feature request: As it seems, StreetComplete only uses online map tiles & a local cache. It would be nice if it could use downloaded offline maps, like used by e.g. osmand.

@westnordost westnordost changed the title (feature) support offline maps offline maps Apr 15, 2017
@westnordost
Copy link
Member

This is not possible yet with the map rendering library I use. But they are working on it.

@westnordost westnordost added the blocked blocked by another issue label Apr 15, 2017
@AidenQuinn
Copy link

👋 @westnordost, just found your app - so cool. Mapbox has offline downloads. are you working with any of my colleagues?

@westnordost
Copy link
Member

westnordost commented Apr 17, 2017

Yeah, that's pretty nice, nice job. However, the rendering library I use is tangram-es, they chase behind in terms of features.

@johnwhelan
Copy link

I preloaded the quests in the area I wanted to tag, closed the app foolishly. When I reached the area the quest where there but no highways etc so I couldn't add tags.

Later I entered an internet cafe for a coffee and started the app. On leaving I
still had maps. Could some sort of cache be added? Or a note in the instructions to open the app with an Interent connection and leave it open to retain the map?

Thanks John

@westnordost
Copy link
Member

westnordost commented Apr 24, 2017

There should be a working cache. You can change the cache size in the settings. I have no further control over the cache other than (letting the user) specify the size of it (i.e. when what gets deleted from the cache).

@johnwhelan
Copy link

So its a documentation issue. If the cache is set large enough it is possible to work off line. Don't you love documentation things?

Thanks John

@LivInTheLookingGlass
Copy link

One thing to look at would be to use the maps present in OsmAnd~. I'm not sure how feasible that is, but it would allow people to save space once this is unblocked.

@tallytalwar
Copy link
Contributor

Just FYI, tangram-es does have functionality to use mbtiles offline tile set. However one will need to create mbtiles from mapzen vector tile data on their own. We at present do not have any service to download mbtiles of a region.

Of course you can use mbtiles from another dataset, but will have to style the scene accordingly.

@westnordost
Copy link
Member

Ah interesting, I did not realize that the implementation was finished already. If you permit, I'd ask you a few questions regarding this but I'll just email you, don't want to litter this issue (or a tangram issue) with general questions about mbtiles.

@mycae
Copy link

mycae commented May 14, 2017

Hi,

The cache feature is OK, but not really useful for example in the use case of a long car journey, using street-complete to pass the time. I do use the cache, but the cache concept is pretty limited.

Osmand's offline files (OBF) files and a vector renderer are really really needed. A pre-rendered tile-based solution will be too large, and wont work in this case.

Its also not easy for an end user to specify the zones required for the cache, even for shorter journeys. Currently I have to zoom in to each area, and then wait for it to download, then zoom to another area. If I have more than one application that requires tiles, my device fills up.

I'm more than happy to point streetcomplete at the required obf files, and to duplicate those, as they are quite small (especially if this can be done from SD).

@LivInTheLookingGlass
Copy link

Seconding @mycae on this one. It would especially be useful if you could point StreetComplete to OsmAnd~'s offline maps, so that you don't need to duplicate them.

@HolgerJeromin
Copy link
Contributor

See #243 for thoughts about osmand relationship.

@westnordost
Copy link
Member

Can somebody point be to the Osmand offline file format (OBF?) Is this mapsforge format or what exactly?

@johnwhelan
Copy link

It's a compressed propitiatory format. Even one version of OSMand cannot handle the .obf file from a different version. Recently they have added height data which caused yet another revision of the .obf format.

They are created by map creator but again you need the right version to match the version of OSMand.

I wouldn't recommend using it.

Cheerio John

@LivInTheLookingGlass
Copy link

#243 isn't at all what I'm looking for. My suggestion is merely that it should read the same map files, and allow you to specific a custom location. That would allow you to not have duplicates.

@johnwhelan
Copy link

osmand uses its own map data files in .obf format and it isn't particularly stable for one version to the next. It's a known issue for people wanting to create their own files. The version of map creator has to align with the version of osmand.

@matkoniecz
Copy link
Member

matkoniecz commented May 17, 2017

Osmand has very llimited map download count, with fees for additional downloads. If one would decide to rely on data from other app then maps.me seems to be a better idea (though anyway using data from other app and trying to keep up with potential changes seems like a very bad idea).

@krzyk
Copy link
Contributor

krzyk commented May 17, 2017

@matkoniecz There is an Osmand~ version (available from F-droid) that doesn't have that limitation, only google play version has it.

@Hillside502
Copy link

limited map download count, with fees for additional downloads

Are we saying that OsmAnd limits the number of maps installed on a device?

@johnwhelan
Copy link

There are two versions a free one and a paid one. The free one limits you to 12 downloads and one of these really needs to the the world overview. If you are updating the local area you really need to update the map from time to time, OSMand on a good day updates once a month. So not an ideal solution.

@azrdev
Copy link
Author

azrdev commented May 17, 2017

the limit applies do downloads, not number of stored obf files, though. And it's only imposed on the app, not downloading manually from http://download.osmand.net/list.php

Also, IIRC the free beta version of osmand has no download limit

@Hillside502
Copy link

OsmAnd+ and OSM Live Subscription --- the world's your oyster (updated HOURLY)

Maps & GPS Navigation OsmAnd+ – Android Apps on Google Play
https://play.google.com/store/apps/details?id=net.osmand.plus

@krzyk
Copy link
Contributor

krzyk commented May 17, 2017

and the version without limits is here: https://f-droid.org/repository/browse/?fdid=net.osmand.plus as advertised on osmand github page

@Hillside502
Copy link

@krzyk
There are no download limits in the Google Play Store OsmAnd+ (Plus)

@HolgerJeromin
Copy link
Contributor

There are various reasons why osmand or its data files are no solution for streetcomplete.
The format is not stable and osmand does not provide a rendering library.

So in my opinion we do not have to discuss this app (which I like a lot and bought plus version and live subscription) in this issue further.

@jancborchardt
Copy link

Does Maps.me use a format for the offline files which could be reused by StreetComplete? cc @Zverik @rokuz @darina from @mapsme. :)

@conrad-heimbold
Copy link

I can really recommend "Tileless Maps" ( https://github.com/TilelessMap/TilelessMap ). It uses vector instead of raster images. The databases are based on postgis and have the twkb format.
Tileless maps can also be used offline.

@rugk
Copy link
Contributor

rugk commented Mar 12, 2018

Okay, but this would mean switching to a completely different rendering library, as far as I see. So this is not really realistic.
Also vectors can sometimes be bad for performance reasons (OsmAnd uses vectors AFAIK), but for the simple mapstyle of SC, it would likely not be so bad.

@rugk
Copy link
Contributor

rugk commented Mar 12, 2018

New issue for Tileless Maps: #971

@GITMichaelK
Copy link

Is there any chance to use StreetComplete offline, without Internet-connection abroad. I have osmand installed on my phone and it works fine with all local osm-data. Can I use this ore something similar (e.g. downloading an area first, uploading information later when back home), to work with Street-Complete?

@westnordost
Copy link
Member

westnordost commented Nov 18, 2018 via email

@westnordost
Copy link
Member

westnordost commented Nov 18, 2018 via email

@GITMichaelK
Copy link

GITMichaelK commented Nov 18, 2018

Tobias: Thank you for the program, your effort and response.

I've read something about

downloaded beforehand and solving

without seeing the map; this is a mess for me and not really practical. Same with the method to increase the cache: I could not find an acceptable solution to work with.

May I ask where you want to go?

Sure, rural areas (villages, litlle towns) in Bavaria. Please don't believe, that here is Internet service everywhere. I experienced last year f.e. Russia, Chile, Greece and Spain, almost no issue there. Here is different ...

I'd appreciate, if you could increase the priority for this feature again!

@johnwhelan
Copy link

johnwhelan commented Nov 18, 2018 via email

@GITMichaelK
Copy link

I fully agree

What would be nice is the ability to overlay something like osmand behind streetcomplete.

OSMand is already available (on my phone) and those maps are updated regularly. To use these as tiles for the StreetComplete-tasks would be the preferred way to solve this (at least in my eyes ;) ).

@georg-d
Copy link

georg-d commented Dec 19, 2018

OSMand is already available (on my phone) and those maps are updated regularly. To use these as tiles for the StreetComplete-tasks would be the preferred way to solve this (at least in my eyes ;) ).

OSMand maps were pointed out above to be no good choice due to frequent format changes, moreover downloads are limited in 1 of the 2 versions.

What about Mapsforge? It's a stable format, so maintenance effort is limited, map files are offered by many distributors like openandromaps, so StreetComplete is not depending on 1 map supplier, and it is used by many apps like Locus and OruxMaps, so map files exist on many phones.

Maybe it's easier to turn the idea upside down, i.e. not making StreetComplete using map files of other apps (weren't filesystem access restrictions changed in Android versions again and again?), but making other apps using StreetComplete? Maybe it's easy to offer different "flavors" of StreetComplete that work as addon within different map apps like Locus or OSMand. These "flavors" do not need to take care about map rendering, GPS position aquisition etc. but just the core feature set, i.e. load & display quests and send the answers. For users, it becomes more convenient, as they do have only one app open for casual mapping instead of steadily changing between 2 apps.

@GITMichaelK
Copy link

GITMichaelK commented Jan 21, 2019

Even if I don't see any issue with OSMand, I'm really interested to have an offline-usage for StreetComplete. May be, you can give a try to Vespucci by SimonPoole, ref. "Going completely offline with Vespucci".

@GITMichaelK
Copy link

Seen the version 11, still without offline-mode. Is there any chance to get it or should I forget abou it?
Thanks and regards, Michael

@matkoniecz
Copy link
Member

Is there any chance to get it or should I forget abou it?

This issue is open, it means that it is waiting for someone to implement it. In general, in open source projects you can either implement it by yourself or wait for someone else to do this. There are ways to increase chance for someone working on it, but comments with complaints usually have an opposite effect.

For people unable to significantly help GitHub has nice feature that allows to express interest in the feature - reactions allowing to add +1 without sending spurious notifications.

@matkoniecz
Copy link
Member

May I ask where you want to go?

Poland

In Krakow forest within city has big spots without mobile data availability (and at times without even ability to make phone calls). Forest nearby city is completely without mobile data, the same for some rural areas.

For quests this is not a problemb at all, current caching is sufficient. But often one needs some context provided by map to answer question and lack of preloading map tiles makes it impossible.

For example one of my UX testing sessions was initially going well, then most of it was cancelled as we reached forest without mobile data (Ojców near Kraków).

@matkoniecz
Copy link
Member

It seems that mbtiles are a good idea - supported in mapzen and fairly standard so in case of switching rendering library not all work will be lost.

But I wonder about how people are going to get mbtiles (or other data). Reusing Osmand/mapsme data is not feasible (would require constant chasing format changes). I am dubious about possibility of providing our own data. And relying on third party providers (some exist) will cause problems once they disappear.

Obviously, it is possible to provide scripts to generate mbtiles (or other format), but how many people will be able to do this?

@westnordost
Copy link
Member

westnordost commented Aug 23, 2019 via email

@NotSoImportant
Copy link

Very nice that this was implemented 🥇. Will try it out.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked blocked by another issue enhancement
Projects
None yet
Development

No branches or pull requests