Android

From OpenStreetMap Wiki
Jump to: navigation, search
Available languages — Android

Android is a Linux-based operating system for mobile phones and other mobile devices. Android devices can be used to view and edit OpenStreetMap-based maps as well as to record GPS tracks that can be uploaded to OSM to aid in editing.

For more information about Android and OpenStreetMap, see also the Android category.

OpenStreetMap.org

The most basic way to use OpenStreetMap on your Android device is to open http://www.openstreetmap.org/ in a Web browser such as Chrome. The website is optimized for small screens such as those found on many Android phones; however, the slippy map is limited to basic gestures such as drag-to-pan and pinch-to-zoom. OpenTouchMap has slightly better multitouch support. For a map-viewing experience similar to that of the Google Maps application, check out the applications below. Similarly, for contributing to OpenStreetMap, the iD editor embedded on the website supports basic interaction on tablets, but you may find an Android editor application to be much more convenient.

Applications

Main article: Comparison of Android applications

The following applications rely on OpenStreetMap for core functionality, so they’re good ways to use OpenStreetMap on your Android device. Each of these applications is actively maintained, with a new release within the last 18 months, as of 11:02, 26 June 2016 (UTC). For a comprehensive comparison of all available Android applications, see Comparison of Android applications.

Augmented reality

These applications overlay OpenStreetMap data atop a real-time view of the device’s back camera:

Navigation

These applications provide turn-by-turn navigation and, in many cases, voice guidance:

It is also possible to load OpenStreetMap-based maps into the following applications:

OpenStreetMap editing

These applications allow you to contribute to OpenStreetMap, usually by editing the map directly:

Track recording

These applications allow you to record your movement as GPS tracks. You can upload your GPS tracks to OpenStreetMap to help you add features to the map. Most of these applications also have orienteering features that are useful for navigation but not as granular as the turn-by-turn navigation applications.

Travel planning

These applications let you search for and learn about places on the map. Many of them also support offline maps.

Miscellaneous

Libraries for developers

Main article: Frameworks

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 that they respect OpenStreetMap’s tile usage policy by fetching tiles and other resources from dedicated servers instead of OpenStreetMap’s donated servers.

There are also a number of projects on GitHub and Google Code with both 'android' and 'openstreetmap' tags.

Maps

Library Minimum API level License Notes
CartoType Unknown Proprietary Rendering and routing library
LocationMapViewer Unknown GPLv3+ Android-Intent; "geo:"-Uri; gpx and kml file/url
Mapbox Android SDK 15 BSD Customizable, interactive vector maps styled in Mapbox Studio and rendered using OpenGL ES. Hybrid components available for Cordova, NativeScript, React Native, and Xamarin.
Mapbox Android Services 15 MIT Connects to Mapbox’s Static API
mapsforge 9 LGPLv3 Map rendering, map overlays, and more
Nutiteq Maps SDK Unknown Proprietary Cross-platform SDK for mobile maps with vector rendering by CartoDB. Supports 3D city overlays, editable vector overlays and is highly customizable.
OSMBonusPack Unknown LGPL with exceptions Addon for osmdroid: Markers, Bubbles, Routes, Directions, KML and more...
osmdroid Unknown Apache 2 OSM based replacement for Android's MapView (v1 API) class. Supports online and offline tile sources and overlays for plotting icons, tracking location, drawing shapes.
OsmSharp Unknown GPLv2 or commercial Offline vector map rendering in C# using Xamarin
Skobbler Android SDK 14 Proprietary
Tangram ES Unknown MIT 2D and 3D map renderer using OpenGL ES
WhirlyGlobe-Maply Unknown Apache 2 Geospatial display kit for iOS and Android based on OpenGL ES. Implements a 2D map and a 3D globe and can handle image base maps and tiled vector maps based on OSM data.

Geocoding

Library Minimum API level License Notes
Mapbox Android Services 15 MIT Connects to Mapbox’s Geocoding API
mapsforge 9 LGPLv3 POI indexing and search

Directions

Library Minimum API level License Notes
CartoType Unknown Proprietary Rendering and routing library
GraphHopper Unknown Apache 2 Routing engine for car, bike and more
Mapbox Android Services 15 MIT Connects to Mapbox’s Directions API for route data
mapsforge 9 LGPLv3 Route planning and navigation
osm-common Unknown Apache 2 Nominatim

See also