osmdroid is a (almost) full/free replacement for Android's MapView (v1 API) class. 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.
Current Release: 5.2 April 28th, 2016
Please read the osmdroid wiki for tutorials on integration.
Gradle dependency
repositories {
mavenCentral()
}
dependencies {
compile 'org.osmdroid:osmdroid-android:5.2@aar'
//Note as of 5.0, SLF4j is no longer needed! compile 'org.slf4j:slf4j-simple:1.6.1'
}
Maven dependency
<dependency>
<groupId>org.osmdroid</groupId>
<artifactId>osmdroid-android</artifactId>
<version>5.2</version>
<type>aar</type>
</dependency>
You can also compile osmdroid from source or download the dependency directly from OSS or download the distribution package
Continue reading here, How-to-use-the-osmdroid-library
Related and important wiki articles
If you have a question, please view the osmdroid FAQ.
You can also view the Stack Overflow osmdroid tag and osmdroid Google Group where you can get feedback from a large pool of osmdroid users.
If you still have an issue, please check the Changelog page to see if this issue is fixed in a newer or upcoming version of osmdroid.
If think you have a legitimate bug to report then go to the Issues page to see if your issue has been reported. If your issue already exists then please contribute information that will help us track down the source of the issue. If your issue does not exist then create a new issue report. When creating an issue, please include the version of osmdroid, the Android platform target and test device you are using, and a detailed description of the problem with relevant code. It is particularly helpful if you can reproduce the problem using our OpenStreetMapViewer sample project as your starting point.
Great! Osmdroid continues to improve from the contributions of its users. This could include code contributions, sample fragments for OpenStreetMapViewer, or wiki content. If you have an enhancement to contribute please add a new issue. Describe the enhancement you are adding, how you implemented it and attach a patch against the latest trunk. Please take a look at the Developer Guidelines page for code contributions before submitting code.
The OSMBonusPack project adds additional functionality for use with osmdroid projects.
Thanks to Gradle Fury, this publishes the artifacts to mavenLocal.
./gradlew clean install
In your root build.gradle
file, add mavenLocal() if not present.
allprojects {
repositories {
mavenCentral()
mavenLocal() //add this if it's missing
}
}
Then in your APK or AAR project that needs osmdroid. Future readers: you may have to update the version numbers to match the source. Hint: the version number is defined in osmdroid gradle.properties file, key = pom.version.
compile 'org.osmdroid:osmdroid-android:5.3-SNAPSHOT:debug@aar'
./gradlew cC
./gradlew clean install distZip distro -Pprofile=sources,javadocs
Output zip is at osmdroid-dist/build/distributions/
Edit gradle.properties and update the version information (android.versionCode and pom.version). Commit the change and tag with git.
Edit gradle.properties and set your credentials for nexus endpoint to publish to
./gradlew clean install distZip distro -Pprofile=sources,javadocs publish
Edit gradle.properties and remove your crendentials.