Frequently Asked Questions
- I want to buy/support OsmAnd
- OsmAnd purchases
- Why does OsmAnd require permission X?
- How to move OsmAnd's home (maps) folder to the external SD card?
- How do I use my SD card with OsmAnd under Android 4.4+ and 5?
- OsmAnd+ installation on the SD card fails
- Uninstalling or Resetting OsmAnd without Losing Your Data
- I have a GPX file, how do I get it into OsmAnd?
- Contour lines or hillshades do not show up
- Is there a way to have contour lines displayed in feet also, instead of meters?
- I can't install or upgrade the app
- I can't uninstall the app
- I uninstalled the app/I'm using a new device. Do I have to OsmAnd again?
- Trip recording stops in the energy saving mode
- How to restore purchases on iOS
- The route calculated does not seem correct
- Route calculation is slow
- How to calculate routes longer than 250km?
- What is the difference between TTS (text to speech) and recorded voices?
- TTS does not function properly
- What do the 'Use current destination' and 'Pass along entire track' options mean when navigating using predefined GPX routes?
- How to search an address via postcode
- Offline search by address does not show all streets
- House numbers are missing
- Why does OsmAnd not offer access to Google Maps?
- OsmAnd shows only some speed camera traps
- OsmAnd seems to drain too much battery power
- How to setup development environment?
- How to compile Android version (Gradle / Android Studio)?
- OsmAnd Development
- What intents does OsmAnd listen to?
- Creating own maps and OsmAndMapCreator
- OsmAnd Beta Testing
- Google Play
- Amazon Market (depends on the country)
- You can purchase OsmAnd using Google Play gift cards. Using this method does not imply sharing your credit card information to the service. Just purchase a gift card from a retailer on the list and redeem the code one Google Play.
- Please see a detailed guide on buying Google Play gift cards here.
- You can also use Amazon gift cards. Here's how to redeem them.
- In addition to powerful features in the basic version of OsmAnd, you can purchase several special ones, including the following:
- OsmAnd+ offering you an unlimited number of downloads and the access to the Wikipedia feature (download). The full version of OsmAnd is available as a separate app on Google Play or as an in-app purchase named 'OsmAnd Unlimited'. You can get it right in the free version of the application by going to 'Download maps' and pressing the download counter bar. In the latter case, you won't have to install OsmAnd+, you'll just have all the features unlocked in your OsmAnd app.
- Contour lines plugin to view the contours of a terrain and its 3D representation (download).
- Sea depth contours to see the details of the sea bottom (download).
- OSM Live subscription allowing frequent map updates (please read more here).
- iOS extended features including map bundles and paid plugins (please read about the plugins here).
- To read about every purchase in detail, please see this guide.
- Camera/voice recording - this is only used by the Audio/Video notes plugin. This feature is optional and by default disabled (it can be enabled in the Plugin Manager). It allows to quickly create location-related audio/video notes during a trip.
- Read address book - is required by the app in order to use addresses that are defined in your address book.
- GPS/Network access/SD card are natural requirements for this application.
- Billing permission - even though the free application doesn't have any in app, it was introduced to get them in and the last moment inapp was excluded. There is no reason to remove that in app because it will be needed to go through long procedure of extending permissions again.
- Go to Settings (on the start screen) — General — Data storage folder.
- Change the value to a path pointing to the external SD card, on many Android systems it may contain "/storage/extSdCard" or similar. Please note that some versions of Android strictly limit your choice of which path will be write-accessible for apps.
- Then you can move the contents of OsmAnd's data folder from the internal memory to the external SD card , either using the built-in "move" option the OsmAnd app provides when changng the data folder, or using a built-in file manager app on the device, or via connecting the device to a computer as external storage and performing the move from there.
- Move OsmAnd's data folder osmand to the internal storage.
Drawback: Internal storage can be rather small.
- Move OsmAnd's data folder osmand into its standard SD folder,
for OsmAnd+ : (extSdCard)/Android/data/net.osmand.plus
for OsmAnd : (extSdCard)/Android/data/net.osmand/files
Caution: Whenever you uninstall OsmAnd now, all your data will be erased as well! (Unless you unmount your SD card, or rename the net.osmand(.plus) folder before de-installation.)
You might experience an issue with the new OsmAnd version working with Android 5 devices. It is known and we’re working to fix it as soon as possible. Please read more on GitHub. OsmAnd doesn’t ask specific permissions to get access to random folder on device, though we expect that the standard path on the SD card (Android/data/net.osmand.plus/files/osmand) should work. You can try to enter the path manually in order to make it work.
This happens only for the OsmAnd+ paid version and it is a known Google Play issue (this is reproducible for other paid applications copied to SD card).
Symptoms: Application was installed on SD card and update fails
- Check here http://www.newbiehelper.net/solve-couldnt-install-on-usb-storage-or-sd-card-error-in-android-2-2/
- If you have a running application, please make a backup
- Export your favorites and then uninstall the application completely
- Clear the cache of Google Play app and unmount the SD card
- Re-install the app
Because this issue happens before the OsmAnd app even starts, this issue cannot be fixed in OsmAnd, but needs to be fixed by Google Play. Please turn to Google Play — Help — Contact Us and report the issue there so Google can fix it. (The issue happens only for some devices and Android versions.)
On most systems the following procedure can be used to reset or uninstall/reinstall OsmAnd while preserving the original app data on the SD card:
- Before any Uninstall or Clear data operation, rename the app data folder, e.g. from net.osmand.plus to net.osmand.plus0
- Then either in the Android App manager force stop / clear cache / clear data to reset the app, or uninstall/reinstall OsmAnd, as desired
- Start OsmAnd
- On its 'First Start' screen tap: Get started -> Change the data folder to the SD card -> Skip -> Skip downloading maps
- Force-stop OsmAnd
- Using a file manager app, delete the newly created (almost empty) OsmAnd data folder, and rename your old (preserved) data folder back
- Restart OsmAnd
- Go to Settings / Download maps: Your existing offline maps should now be listed on tab Local. Go to the tab Update and tap the refresh icon, this should make OsmAnd finally aware maps are already present and can be used.
- You can download and open it via File Browser or Dropbox and select OsmAnd as a target application
- You can put it in OsmAnd home folder: osmand/tracks/(optional_sub-folder)/your_file.gpx
- To open a GPX file in OsmAnd, just download it and select OsmAnd as an app to open it. That's it: you'll view the file normally in the application.
- Check if the Contour Lines plugin you bought is enabled under Settings — Plugins — Contour Lines.
- You need to download the contour line files from the menu in Settings — Manage map files. Select the country or region you want to download contour lines for and tap the download icon next to "Contour lines". You can also download hillshade data ("Hillshades") to make hills and mountains stand out even more.
- Check at what zoom level they appear in Menu — Configure map — Show contour lines.
- If you additionally have hillshade layer data present, its display can independently be enabled in Menu — Configure map — Hillshade layer.
- If the contour lines do not show up, please follow these steps:
- Check if the Contour Maps plugin is enabled under Maps & Resources — Plugins — Contour Lines. If you haven't purchased the plugin, you have to do it first.
- Next you have to download the contour line files of the areas you need. To do it, please go to Maps & Resources and choose country. On that page, you'll see contour lines and hillshade downloads close to the main map file.
- Then just go to the map and zoom in until you see the lines. If you need hillshade as well, just download the hillshade file, then tap the map button on the left and turn Hillshade switcher on.
If you have an error "-25/-26/-27" please read below, otherwise please contact support. The issue you are experiencing is now confirmed as Xiaomi MIUI's integrated anti-virus' fault. To avoid error "-25/-26/-27", you need to freeze the "Guard Provider" process before updating OsmAnd. Then, once updated, you can re-enable the process. There are many ways and tools to freeze a process. We suggest you to google it yourself, although some of our users used 3C Toolbox or App Master, but we leave this to your preference.
To freeze a process, follow these steps: go to App Manager --> Apps tab --> filter by System Apps --> select the "Guard Provider" --> tap the Manage button (bottom right, four little squares) --> Freeze. To unfreeze, repeat the same procedure. Unfortunately "App Master" does not do freeze in the OsmAnd Free version. 3C Toolbox does the trick, but you will find the "Guard Provider" process as "com.securitycore.miui_t" under "Apps" with the filter on "System".
Sometimes you might want to uninstall the app because you want to install the paid version or a nightly develompment build, and you find that the "UNINSTALL" option is inactive.
This is because OsmAnd has been configured as "Device Manager" by you as user.
In hiking/cycling mode OsmAnd can be configured to switch off the screen and switch it on just before a navigational change of direction is necessary. To make this possible in Android, OsmAnd is added to the "Device administrators" section. This is the reason you can't uninstall OsmAnd.
To uninstall OsmAnd in such a case you need to go to (Android) "Settings->Security->device administrators" and uncheck OsmAnd as a device administrator. After having done that you can uninstall OsmAnd.
- What version of OsmAnd are you using, on what device?
- Do you use the offline maps offered within the OsmAnd app for download, or online (tile / raster) maps?
- If you use offline maps, tell us the exact name of the map file where the routing issue occurs, and its edition date.
- Tell us whether you have used OsmAnd's in-app offline routing, or any online routing provider like YOURS, OpenRouteService or OSRM.
- What routing profile is choosen in OsmAnd app (car, bike or pedestrian)?
- Please specify as exactly as possible the start and end point of your route. If possible, tell us city name and street name for each. Also a Permalink from openstreetmap.org can be helpful.
- Tell us your expected routing, and how OsmAnd routes.
Please be aware that there are 2 offline routing engines in the app: a Java based approach and a "Native" (C++) routing. The Java based approach is used in 'Safe Mode', it is 10 times slower than native mode and it has strict memory limitations. If you experience it and you see messages 'Not enough memory to compute', please go to Settings — 'General' — 'Safe mode' and make sure the option is disabled.
For native routing there are different limitations for different phones, depending on memory & processor. In general, native routing should handle < 300 km routes nicely. The route calculation should take between 15 sec and 4 minutes. It is prudent to not wait much longer than 4 minutes, because most likely the program will crash.
The only known workaround to compute long routes is to insert intermediate destinations. Two additional intermediate destinations should be enough even for very long routes.
TTS (text to speech) synthesizes any voice prompt just from a specified text "on the fly", while recorded voices depend on combining every command from a set of snippets pre-recorded from a human voice.
In OsmAnd, we recommend using a synthesized (TTS) voice. They are better maintained by the project developers to provide the latest feature set. Since they are more flexible, they are e.g. able to also pronounce street names or highway numbers (OsmAnd version 1.5.1 and newer), which pre-recorded voices can not. TTS prompts may on some devices sound a bit more "robotic", and the selection of languages actually supported on your device is more limited. Both what languages are supported and their voice quality strictly depend on the TTS engine installed on your device, not on OsmAnd. See also next section "TTS does not function properly".
I suggest that recorded voices should only be a fallback if you really like a particular voice, or if you cannot find a TTS engine supporting your language. Many 'recorded' voices have significant shortcomings like gaps and unnatural intonation, and some phrases may be missing entirely, where for a maintenance like adding new commands we could not get access to the original speakers any more.
TTS issues will usually have to be fixed in your Andoid configuration and settings, not within the OsmAnd app!
Which TTS languages are supported on your device and the sound quality of each TTS voice strictly depends on the TTS engine you select (or install) via your Android device settings. There is usually one TTS engine pre-installed on each device (e.g. google, Samsung, Pico). An additional 3rd party engine (see below) can be installed if needed.
A TTS engine often supports several languages, but one needs to be selected as the one to be used. To improve the voice quality: Some TTS engines come pre-installed with only a set of basic-quality pronunciation packages for the languages they support, and then faciliate downloading a high-quality package for the very language you actually select to be used.
If you have issues with the TTS voice guidance:
- First check if you have a TTS engine installed on your Android device which supports the language you want (i.e. offers it for selection in its options). To do this, find and select the language you want in the Android (not OsmAnd) settings, often located under "Language and Input / Text-to-speech options".
- Then use the test button usually provided there to "Listen to an example". You should hear a test annnouncement in the correct language and pronunciation.
- Once this works, finally go to OsmAnd's General settings / Voice guidance and there select the corresponding TTS language (it should be the same language or at least same language family you tested above). (Please note that the language list OsmAnd initially displays can be extended by tapping the "Install more..." option.)
It is a known issue that many pre-installed TTS engines may not support less widely spoken languages (even though the number of languages supported is growing). You can always try to find a 3rd party TTS engine supporting the language you are looking for: Install it on your device, and follow the above procedure. This should then provide TTS support for this language. Some of the more prominent TTS engines are:
- "Use current destination": Guides you via the specified GPX-track, but to your currently selected "Destination", so the GPX route can be extended or shortened.
- "Pass along entire track": Forces the OsmAnd navigation algorithm to, as much as possible, traverse the entire GPX track, even if shortcuts are possible or you are already near its end when you start, or already rather close to your destination before traversing the entire GPX track.
- Go to Search (on the start screen)
- Move to the second tab on top (search by address)
- Choose a Region
- Click on the City button
- Instead the city name fill in the postcode
- Choose a Street
- Choose a Building (not required)
Most of these issues are map data issues and should be double-checked via OpenStreetMap. If you can see that data is present there (note that it takes some time for new OSM data to appear in OsmAnd maps), then the problem is in OsmAnd's algorithm or how that data is structured.
The most common issue is that streets exist but are not found in a city, and this is due to missing evidence in the OSM data to what town/city the street belongs. In OsmAnd's address search you can try the button "Search in neighbouring cities" if you do not find a street as expected.
To investigate this problem you can use the BinaryInspector tool from OsmAndMapCreator, installation of which shows you exact information on what is in the obf file. Most probably you will find your street in a neighboring town. If you decide to report an issue, please specify all relevant information in its description.
If you want to see more detail about why these issues occur in OsmAnd's algorithms, please read this article.
OsmAnd uses OpenStreetMap (OSM) as the source of the map data.
This map is built collaboratively by Internet users. There are some advantages of this approach, like changes to roads or POIs can appear very quickly. But there are also disadvantages, like missing data (house numbers as an example), as the data is not overall checked for consistency.
- A point (called "node" in OSM terminology) of a way is tagged with "highway=speed_camera"), see OSM wiki at highway=speed_camera
- a group of OSM data elements are joined together in a so called "relation" that contains more elements than a single node to describe the direction that is covered by the speed trap ... see Relation:enforcement
There have on and off been user reports about this. We made lots of measurements and could never really reproduce it, even though under some circumstances OsmAnd is reported responsible for 90% of the battery usage. Please be aware that OsmAnd does not run anything in background except its Sleep mode (background service), and this needs to be specifically enabled (via OsmAnd's GPX recording or Navigation guidance functionality). If enabled, you will always see the OsmAnd sleep mode icon in the status bar (can also be stopped there). So unless the sleep mode is active, if you exit the app (go to home screen), OsmAnd will will not cause any power consumption.
Power usage issues were reported with Android 2.3 and Android 4.0. In Android 4.0 you can double-check details of what causes how much battery drain. If you check CPU time / screen time / GPS time consumed by OsmAnd (in Android's standard power manager) you will see that the numbers don't add up correctly. For example, 2 min GPS, 2 min CPU, 1 min Screen causes 30% consumption. If you have some better good evidence, please contact us.
PS: If you use OsmAnd for hiking or otherwise carry your device in a loose pocket where you might press the device's power switch accidentally, it is also advisable to put OsmAnd to the background (by hitting the device's Home button), before putting the device to sleep. Reason: If OsmAnd's map screen is the foreground application, any accidental (unnoticed) push on the power button will not only activate the screen briefly (this is unavoidable), but may then also briefly activate GPS, which is quite a battery eater.
- No. Just enter Google Play using the same account you used to buy OsmAnd, then find OsmAnd through Search and install it again.
- No. All you have to do is enter the Appstore and install OsmAnd again. You can use it on as many devices as you want without the need to buy the app again. You may see the "Buy" button, but you won't have to pay: just press it to download the app without paying again.
We strongly insist that you read https://github.com/osmandapp/Osmand/blob/master/LICENSE in order to comply with the rules protecting OsmAnd.
The code in that repository is mainly covered by GPLv3, except some 3rd party libs and resources.
ATTENTION: please be aware that some artwork has a proprietary license.
EXCEPTION of GPLv3: Publishing applications using the OsmAnd GPLv3 code to Google Play, Amazon Market or Apple Store should be done with written permission.
All visual elements in OsmAnd applications, such as icons, banners, etc. are protected by the CC BY-NC-ND 2.0 license. Thus, you must meet certain rules concerning them. You must indicate that the OsmAnd company does not endorse your work and is not connected to it.
If you remix, transform, or build upon the material, you may not distribute the results. This means that the visual content of OsmAnd app and its elements can not be changed and then distributed.
CC BY-NC-ND 2.0 license applies to all graphic elements used in the software. To use them, you need to give appropriate credit, provide a link to the license, and indicate if changes were made.
You must give appropriate credit to the original OsmAnd content: indicate the use of the original OsmAnd content. In particular, you need to add this information:
- Copyright: OsmAnd BV
- Title: OsmAnd Maps & Navigation
- Link to license https://github.com/osmandapp/Osmand/blob/master/LICENSE
- OsmAnd – OSM Automated Navigation Directions – navigation software based on OpenStreetMap. Copyright © 2010–2016 OsmAnd BV (Amstelveen, Netherlands – KvK 62066714).
Also, it is prohibited to use any OsmAnd visual elements for commercial purposes without a special agreement with the author.
For example, you can use the visual content of the application to make a new app that will be distributed for non-commercial purposes as long as you mention OsmAnd properly in the application information, but it is forbidden to sell that application or change the original icons and other visual elements.
OsmAnd source code is open and is protected by the GNU GENERAL PUBLIC LICENSE, Version 3 with an exception. The basic rights it provides are the following: you can run the application for any purpose, you have the freedom to view the application's source code, study the way the app works and change that source code, and you can freely distribute the source code of the application or its changed versions.
However, you are obliged to ensure free access to the code you produced if you change the OsmAnd source code and distribute the results of your work. Also, the visual elements of OsmAnd application are protected by the Creative Commons Attribution-NonCommercial-NoDerivs 2.0 Generic (CC BY-NC-ND 2.0) that eliminates any possibility of derivatives upon those elements and you must ensure compliance with that license.
To eliminate any misreading of the licences, we strongly encourage you to read the full versions before developing your own projects based on OsmAnd or somehow related to it. Creative Commons Attribution-NonCommercial-NoDerivs 2.0 Generic (CC BY-NC-ND 2.0) GNU GENERAL PUBLIC LICENSE, Version 3
Good luck with your work.
You can also use only git and checkout following git repositories into correct folder names:
- Folder core - git repo OsmAnd-core
- Folder ios - git repo OsmAnd-ios
- Folder tools - git repo OsmAnd-tools
- Folder misc - git repo OsmAnd-misc
- Folder resources - git repo OsmAnd-resources
- Folder help - git repo osmandapp.github.io
- Folder android - git repo Osmand
- Folder core-legacy, branch legacy_core - git repo OsmAnd-core
First of all you need to setup development environment as mentionned above.
Specify environment variable and install software (check build.gradle):
- ANDROID_SDK = path to android sdk (currently compileSdkVersion, buildToolsVersion 27)
- ANDROID_NDK = path to android ndk (currently android-ndk-r17b")
You can also use our debug.keystore to make builds compatible with nightly build.
Gradle: cd android/OsmAnd && ../gradlew cleanNoTranslate assembleFreedevLegacyFatDebug
Android Studio: import android project and choose flavor 'assembleFreedevLegacyFatDebug'.
How can I contribute a new language TTS voice file?The TTS voice files (ttsconfig.p) are stored here Github voice. You can fork the repository and then create a pull request with your file.
- Please do not use an underscore _ at the beginning of your file name.
- Do not change the version number specified in the ttsconfig.p file. Use the same number as in the ttsconfig.p file you start cloning from. This number does not denote a file version, but rather the API version that the TTS uses.
Please refer to our English en-tts file for basic reference and as template, and consider to look at grammatically more complex languages like German (de-tts), Czech (cz-tts), or Slovak (sk-tts) to cover more complex statements. There should be a way to correctly produce what needs to be done - the PROLOG used in the tts-config.p files is a powerful programming language.
Regarding distribution: In the latest versions the tts voices are distributed within the app (apk) and need not / cannot be downloaded any more via the download server on the web. (Don't be confused, they still appear like downloads in the app's Offline Data Manager, but they are listed there only and contained locally). The basic idea is that TTS files will not be updated too frequently, so in general it is sufficient to have them distributed with each release, within the application.
OsmAndMapCreator fails with message: OutOfMemoryError
The file you try to process with OsmAndMapCreator is too large. Either try to process a smaller file, or increase the memory for OsmAndMapCreator in the .sh or .bat file. The -Xmx parameter specifies how much memory the program can consume. Settings can be different for 64bit (more than 1.5GB) and 32bit (max around 1.5GB) machines.
After converting an .osm to .obf with only a POI index, the .obf is empty, although original .osm file did contain POIs. What is wrong?
It could be that a crucial tag was missing for OsmAndMapCreator to recognize a POI when you converted the osm from another source, like Garmin. If a point in the OSM file looks like this:
change it to contain an additional 'amenity' tag, like:
Then convert the file using OsmAndMapCreator. You can check on the OSM site what tags are good ones to use, or you can just use this amenity.
How can I specify internet access proxy settings for OsmAndMapCreator?
See http://stackoverflow.com/questions/120797/how-do-i-set-the-proxy-to-be-used-by-the-jvm Use OsmAndMapCreator.bat or OsmAndMapCreator.sh to start OsmAndMapCreator based on your operating system. Both of them invoke java, so you just need to add the -D... -D.. (i .e. -Djava.util.logging.config.file = logging.properties) params to the invocation. like:
I want to put some custom details on a vector map (render own custom data)
OsmAndMapCreator can process only OSM files (osm-xml, bz2, pbf). However the set of tags can be customized. To specify what tags/values need to be indexed by Creator please download and change this file https://github.com/osmandapp/OsmAnd-core/blob/master/OsmAnd-java/src/net/osmand/osm/rendering_types.xml. OsmAndMapCreator has an option to use custom rendering_types.xml in the settings. Once the map file is created you can double check that data is present via the binaryInspector utility with the '-vmap' argument. This utility is packaged with OsmAndMapCreator.
Once the .obf file is ready you can create a custom rendering file to display your custom missing attributes. There is a default rendering style which contains all information about rendering https://github.com/osmandapp/OsmAnd-resources/blob/master/rendering_styles
Currently OsmAndMapCreator doesn't support relation tagging. So you need to manually copy all tags from relations (like route color) to way tags by script.
The Google Play Store provides the possibility to test beta versions of apps, which enables you to (temporarily) download and use the test version from the Google Play Store instead of the standard release version(s).
For OsmAnd this means that you can participate in testing the new OsmAnd free or the new OsmAnd+ paid versions. This enables you to use and test exciting new features. Of course, using a beta version also means that you might encounter bugs or app crashes.
The Google Play Store mechanism also supports the easy return to the standard version from the Google Play Store.
Activating the test version
Register as tester for the OsmAnd free test version via the following Google Group: https://play.google.com/apps/testing/net.osmand Register for the OsmAnd+ paid test version via the following Google Group: Testing (note: this is only possible if you are a registered user for the paid version)
- When you click the link to register, you will see a big blue or green panel advertising "Be a test user" (in your defined language).
- After clicking the "button" you will see the message "You are now a tester" with a green check-mark in front of it (and on repetitive actions it will show "You are a tester").
- Give Google some time to synchronize which can be anywhere between 10 seconds or 60 minutes.
- Now you can download the test version, either directly from the Google Play Store, or via your phone/tablet.
Returning to the standard Google Play Store OsmAnd version
Note that the same registration screen, after having registered, also has a link "Leave the test version". If, after some time, you want to use the current standard release version from the Google Play Store again, proceed as follows:
- Use the above link again (so you better make this a bookmark/favorite in your browser). The page will still inform "You are a tester"
- The page also contains the link "Leave the test version".
- Click that link to then see "You have left the test version"
- Manually uninstall the test version, either via the Google Play Store or on your phone/tablet.
- Manually (re)install the current version, either via the Google Play Store or on your phone/tablet.