How to manage offline maps - android

I'm making an Android app that needs to use maps, even if the user is offline. I know that google maps can't be stored for so I tried with Mobile Atlas Creator to genereate tiles and include them whithin the app, but the providers are very limited, they didn't have data for my country.
So my question is what is the best aproach for this type of situations.

You can use an OpenStreetMaps controller (like osmdroid) and Google Maps tiles. According to the Google Maps TOS (10.1.3.b), it seems that you can use a portion of maps if you cache it temporarily and securely

Related

Google Maps API and Offline Maps

I have a small android app project in mind and it will use the Google Maps API. I'm wondering if it is possible to save an offline map specifically for my app to use, or if I could access an offline map that is downloaded onto my google account through my app. Thank you.
No, it's not possible for 3rd party apps to control how maps data is being handled, including off-line usage. It may change in future but for now, you are out of luck.

Google Maps Offline Android Development

I just saw this link
https://googleblog.blogspot.com/2015/11/navigate-and-search-real-world-online.html
and was wondering if there is a way with using this downloaded map in my own mapping application.
Like if I go to Google Maps, download the area, and then in my own app upload that area and use it as offline use.
Has anyone been able to do this or is Google ever going to allow this?
Is it possible?
Yes,it is possible, there are different ways to do it, here you can find one:
* TileProvider using local tiles
The problem is that
Google do not allow it.
On their terms and permissions about google maps API (http://www.google.com/permissions/geoguidelines.html) on "Using maps on the web or in applications" they mention:
"When using the Google Maps API, certain restrictions may apply. Google continually updates the imagery within Maps; thus, caching may result in stale or even impermissible imagery. You may also not mass download or use bulk feeds of any Content, including but not limited to extracting numerical latitude or longitude coordinates, geocoding, text-based directions, imagery, visible map data, or Places data (including business listings) for use in other applications."
On the hand, there are other maps providers that allow this practice. Some of them:
-Open street map:
-OSMDroid
-ESRI/Arcgis (arcgis is based on ESRI's cloud services)
is Google ever going to allow this?
Google maps introduced last month (November 2015) the offline mode, does not only download the map, but also the different locations (images, tiles, etc) within. Even if downloading just the maps is possible since 2012, maybe the introduction of offline features can change their perspective over their offline assets terms, but until they do not change their permissions agreement, it is just speculation.

Storing Google Maps data for use offline with my Android application

I've created an Android application that uses Google Maps API v2.
Can someone tell me if it is possible to download and store map tiles and map data for different areas of the map to be used offline. The ideal usage for this would be to be able to download the whole of the UK, store it on an SD card and then have my app look on the SD for the relevant map data.
Thanks
The answer pointed by Agil is for the case where you have your own TileProvider (i.e. you own the data). If you have access to the tiles, then yes, that is the right solution for you.
If you were thinking of downloading Google Maps tiles, then no, the API currently doesn't provide a way to download tiles for offline usage; only the one rendered on screen are cached.
Please refer to this answer. According to that answer, it is possible with Google Maps Android API v2.

Application Development with Offline Maps

Is it possible to develop an application for Android and iOS that uses offline maps with routes and use GPS to navigate on them? (On foot and vehicle)
I found another answers but the question that is still in my head is, is it possible to user Google Maps or Apple Maps for this?
I also tried to search for a good 3rd party service that gives me what i want, but still nothing.
Regards,Elkas
You can't use Google Map for offline usage. It's against TOS (Terms Of Service)
(any caching or downloading of google maps is against Google Map TOS)
and is illegal.
You can use OpenStreetMaps(OSM) and a map serving service like Mapbox. OSM uses open mapping data that has been provided by users and other contributors and is free to use. With mapbox you can host your maps online but you can also store maps offline. With Mapbox Studio you can custom design your maps to create the kinds of visual hierarchy, affordances, and brand standards that your app needs.
Check out these links for more details:
http://mapbox.com and
http://openstreetmap.org
Also Mapbox uses a pretty straight forward API and lots of documentation. Implementation into IOS is also very easy and you can almost just copy/paste to Xcode (almost).

Can I Access Maps Saved for Offline use by Google Maps

http://howto.cnet.com/8301-11310_39-57462845-285/save-maps-for-offline-use-in-google-maps-for-android/
Ok so on android the new google maps can allow the user to save the map for offline use.
My question is my app uses google maps, can I access these saved maps from my app when I am in offline mode??
Thanks
Ok so on android the new google maps can allow the user to save the map for offline use.
The Google Maps application for Android offers offline caching.
My question is my app uses google maps, can I access these saved maps from my app when I am in offline mode?
The Google Maps SDK add-on for Android does not offer offline caching, at least not at this time.
I'm really not shure, but in my understanding, One uses the GoogleMaps through the Android-Maps-Api. So if you are showing a region you have stored before, the maps-api should deliver stored Map-tiles instead of downloading them from the internet. You can test this, if you store a region around your place, disable all Internet-acces on your phone, and test inside you app, if the stored regions are shown.
EDIT:
Sorry I testet it myself without Result. It will be too nice and easy if that would have worked, maybe Google adds this feature to their API one day

Categories

Resources