Here I see the information that the API uses dedicated servers:
Several libraries make it easy for Android developers to incorporate OpenStreetMap in Their own applications, Whether as a static map image, a fully interactive map, or more sophisticated uses like geocoding and routing. Another benefit of using These libraries is que They respect OpenStreetMap's tile usage policy by fetching tiles and other resources from dedicated servers instead of OpenStreetMap's donated servers.
(And then the API osmdroid appears in the list)
Wiki link: http://wiki.openstreetmap.org/wiki/Android
That's right?
Does anyone know the availability of the servers used by the API osmdroid?
(osmdroid API link https://github.com/osmdroid)
This will depend on the tile provider you choose. According to TileSourceFactory.java there are various provider available, including the official OSM server which have a very strict tile usage policy.
Of course you can use any alternative tile provider you want, including your own one.
Related
I'm looking for a library to display a raster, host on my website, on an Android device.
I'm trying to do that with MapBox but I just read that:
At this time, the offline database format is private. In the future, we may publicly document the format and implement Mapbox Mobile APIs for consuming pre-built databases.
Does it mean I can only display the raster online?
Is there anyway to just point tiles' source to a internal folder?
Should I use OSMDroid instead of MapBox?
Thank you
You can use 4.2.0-beta.5 of our SDK and work off this example to add a raster layer from a web map service. I'm not sure what you mean by offline when you are requesting to add a web map hosted on your website.
I was just wondering if anyone could give me a heads up and any information on where I stand with releasing an Application that uses the OSMdroid open source mapping system. What are the terms of the licensing etc. Should I set up my own map server instead of using the osmdroid mapping server?
Thanks
There is no "osmdroid mapping server". The server used by osmdroid depends on the tile provider given by your specific configuration. This can be the official OSM tile servers, for example. Each tile provider has different terms of use.
The usage policy of the official OSM tile servers is rather strict because they runs on donated resources. There are other tile providers of which some have less strict usage policies. Alternatively you can set up your own tile server or use a paid-for tile server.
I made an android application with Google Maps using Maps API v2 and the app is getting the data from JSON generated by PHP from MySQL database. This works great while phone is connected to the internet.
My question is what is the best way to make app usable offline as well. I need just one small area for offline availability and I can download JSON to the phone storage and parse it but the map part is my main concern. As much as I read this won't be possible with Google Maps but what are the alternatives?
There's an open source Library available out there named OSMDroid which replaces Google MapView classes. It also includes a modular tile provider system with support for numerous online and offline tile sources and overlay support with built-in overlays for plotting icons, tracking location, and drawing shapes.
You can follow this link.
OR
You can follow Mapsforge which provides free and open software for OpenStreetMap-based applications,offers a library for ad-hoc map rendering on Android devices
Go through this link for mapsforge usage
I'm using PhoneGap (3.0) to build an Android/iOS application.
The application revolves around maps and I came to the conclusion that loading tiles from a distant service like OpenStreetMap for example is way too slow and depends too much on 3G.
Is there a way to store tiles inside my application?
If yes, where can I find some documentation, code snippets, etc?
This depends on whether you are planning to use your own custom maps or want to use a 3rd party mapping service and therefore want to cache their tiles offline.
In the first case, I have some experience of this; I've produced a series of guided walk apps which use large custom maps I drew in Adobe Illustrator. See my stackoverflow question and subsequent answer for details, but in summary I used a tool called pngnq to create highly compressed 256 colour 8-bit PNG tiles of my maps which were small enough that I could bundle several zoom levels of tiles along with each app. I ended up implementing a custom mapping solution to enable fast enough performance of map scrolling and zooming when using my Phonegap app on older Android devices.
In the latter case, if you plan to store 3rd party tiles offline, you should first check that you aren't violating the terms of use - some mapping providers specifically prohibit offline caching of their map data.
Assuming this is OK, you may want to consider using leafletjs to power your maps. You may want to check out this blog article on HTML5 Offline mapping and this Phonegap-specific one. Both have links to proof-of-concept apps on GitHub where the source code is available.
Hope this helps!
I want to develop an android mapping aplication that enables users to navigate in the map:
my problem with using google maps API is that the area that I want to map is not detailed and I want to use the maps prvided by other server that has the map I want, or better if I could do it offline(the map is local and not from a server)
what are the best and easiest mapping API that are free licened, enable offline mapping, or enable using other server or OSM????
I found many API but these features I don't if they are supported, and I dont know what is the best(e.g mapquest api, decarta api, nutiteq api)
any help any opinion will be nice,
and thanks in advance.
You can use some of these libraries: osmdroid, mapsforge. Both of them provides interface to some internet map databases and allows to create your own maps provider.
They allows you to have (and handle) your offline cache, dynamic asynchronous maps loading, resampling on zoom, adding overlays and so on, like original MapView does.
Another good point of using these libraries is that they are well-designed for in-place substitution of google MapView.
Both of them are LGPL (you can use them in you commercial apps) and provide interface for OpenStreetMap out-of-the-box.