Route-Me is an open source map library that runs natively on iOS. It's designed to look and feel much like the built-in iOS map library, but it's entirely open, and works with any map source.
Currently, OpenStreetMap, OpenCycleMap, OpenSeaMap, MapQuest OSM, MapQuest Open Aerial and an offline, database-backed format called DBMap are supported as map sources.
Please note that you are responsible for getting permission to use the map data, and for ensuring your use adheres to the relevant terms of use.
MapBox users might be interested in the MapBox fork, which includes lots of MapBox specific additions to Route-Me.
As Route-Me is undergoing some significant changes, the recommended course of action is to clone a copy of the repository:
git:https://github.com/Alpstein/route-me.git
Or, download the trunk.
Then, update the submodules:
git submodule update --init
After this, copy or alias all the resources in the MapView/Map/Resources folder to your project.
See the 'samples' subdirectory for usage examples.
There are three subdirectories - MapView, Proj4, and samples. Proj4 is a support class used to do map projections. The MapView project contains only the route-me map library. "samples" contains some ready-to-build projects which you may use as starting points for your own applications, and also some engineering test cases. samples/MarkerMurder
and samples/ProgrammaticMap
are the best places to look, to see how to embed a Route-Me map in your application.
See License.txt for license details. In any app that uses the Route-Me library, include the following text on your "preferences" or "about" screen: "Uses Route-Me map library, (c) 2008-2013 Route-Me Contributors". Your data provider will have additional attribution requirements.
Join our mailing list for news and to communicate with project members and other users:
To report bugs and help fix them, please use the issue tracker
-
RMMapView and RMMapContents have been merged into one file
-
The map uses an UIScrollView with a CATiledLayer for better performance
-
Tile cache refactoring
-
Tile source refactoring
-
Support for tile sources with multiple layers (e.g. OpenSeaMap)
-
Support for multiple tile sources on the map
-
Numerous performance improvements
-
Markers have been refactored into a MKMapView-like system, with annotations and on-demand markers
-
Automatic annotation clustering
-
Snapshots from the map
-
Requires at least iOS 4.0 and Xcode 4.3
Route-Me makes use of several sub-libraries, listed below. See License.txt for more detailed information about Route-Me and Proj4 and see the individual license files in the sub-libraries for more information on each.
- FMDB by Gus Mueller (SQLite for caching and MBTiles)
- SMCalloutView by Nick Farina (annotation callouts)