Frequently Asked Questions

Purchase and Setup
Using OsmAnd's Navigation
Using OsmAnd's Search
OsmAnd licence and rules of use
Development and Testing
I can't find the answer to my question
Please search on the website or post your question to Github discussions, Telegram chat.
Purchase and Setup
I want to buy/support OsmAnd
There are several possibilities to do that:
OsmAnd Purchases
  • In addition to powerful features in the basic version of OsmAnd, you can purchase several special ones, including the following:
  • OsmAnd+ (OsmAnd unlimited) 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.
Why does OsmAnd require permission X?
  • Camera/voice recording - this is only used by the Audio/Video notes plugin (for Android version only). 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.
  • 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.
How to move OsmAnd's home (maps) folder to the external SD card? (for Android version only)
In order to move the OsmAnd home (maps) folder to an external SD card:
  • Go to Settings (on the start screen)-> OsmAnd Settings-> Data storage folder (for Android version only).
  • 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.
How do I use my SD card with OsmAnd under Android 4.4+ and 5?
If you update your Android to version 4.4.x, you will experience a known Android issue with the WRITE_EXTERNAL_STORAGE permission: Android has changed the rules so that from now on no application can write to the external SD card anywhere outside its new standard folder Android/data/[PACKAGE-NAME]. If OsmAnd was installed prior to updating your device to Android 4.4.x, it will continue to work (read-only) with the old, non-standard osmand folder, but won't be able to update any map and other files 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/
    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.)
If you manually want to perform the necessary copies/moves, either use a PC to perform this action on the SD card, or via the device itself using the file manager tool which came pre-installed with your Android (only these methods will have the necessary write permission). Copies can also be invoked in OsmAnd itself via Menu/Settings/General/Data storage folder but the copy operations may take a long time or result in errors (e.g. if the SD card is too full).

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/ should work. You can try to enter the path manually in order to make it work.

OsmAnd+ installation on the SD card fails

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

Possible solution:

  • Check here
  • 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.)

Uninstalling or Resetting OsmAnd without Losing Your Data
Please note that most versions of Android also remove an app's data folder when you uninstall an app (or when in Android's App manager settings you tap 'Clear data' to reset the app settings to default). If no precaution is taken, this will for OsmAnd mean you lose all downloaded maps as well as any stored Favorites, GPX tracks, etc.(!)

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 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.
I have a GPX file, how do I get it into OsmAnd?
  • 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.
Contour lines or hillshades do not show up
Android Please follow these steps:
  • 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.
Is there a way to have contour lines displayed in feet also, instead of meters?
Unfortunately not. This would require the generation of completely separate contour line data with different geometry and labels.
I can't install or upgrade the app

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".

I can't uninstall the app

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.

How to restore purchases on iOS
If you log out of iTunes or reinstall the application, you might need to restore your purchases. To do that, please go to Maps & Resources - Purchases, scroll down and select Restore purchases.
How to mark different places on the map

You can leave notes for future usage in several forms:

  • Favorites: they are constant points on the map. You can add a description to every Favorite. To add it, please make a long tap -> press Add.
  • Markers: the temporary points with the directions settings. You can see the distance from the selected point or your current location to the Marker and remove it fast. To add it, please make a long tap -> press Marker.
  • Waypoints: the points along your route. You can add a description to this point. To add a waypoint, please make a long tap on the map -> Directions -> rst intermediate waypoint.
  • Audio/Video notes: these are points with your audio-, video-, and photo files added to the selected point on the map. Please enable the Audio/video notes plugin in OsmAnd menu -> Plugins. To add it, please make a long tap -> Actions -> select the required file to add.
  • OSM Notes: your reports on the mistakes in the OpenStreetMap source. Please enable the OSM editing plugin in OsmAnd menu -> Plugins. To add it, please make a long tap -> Actions -> Add OSM note.
  • POIs: these are the points of interest from the OSM map source. Please enable the POI overlay in Configure map menu or select a certain category in the Search.
How to delete history

To remove search history, please open the Search menu, make a long tap on any search result and select which results to delete. You can also enable the select all option in the upper-left corner of the screen to remove all of the search results. After that, please press the Trash icon in the upper-right corner of the screen.

You can also follow this guide to lern more about the search in OsmAnd

Using OsmAnd's Navigation
The route calculated does not seem correct
To track down issues with wrong or sub-optimum routes, please open a new posting in Github discussions or Github issue and specify as detailed as possible the following information:
  • 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 can be helpful.
  • Tell us your expected routing, and how OsmAnd routes.
Route calculation is slow

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.

How to calculate routes longer than 250km?
Many long routes (> 200-250km) cannot not be calculated by OsmAnd's offline routing engine today. If the app does not show a route after 7-8 minutes of calculation time, consider placing waypoints (pick e.g. places on motorways). 3-4 waypoints will be enough to calculate even 1000km routes.
For Android version you can create a Navigation Profile with Third-party routing (BRouter). Read more about it here.
What is the difference between TTS (text to speech) and recorded voices?

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.

Read more about Voice prompts here and here.

TTS does not function properly

TTS issues will usually have to be fixed in your Android 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:

What do the 'Use current destination' and 'Pass along entire track' options mean when navigating using predefined GPX routes?
  • "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.
Using OsmAnd's Search
How to search an address via postcode
In order to find an address by a postcode:
  • 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)
Please keep in mind that OsmAnd data is based on the data from OpenStreetMap. This global map is built collaboratively by Internet users. In some cases the data is not complete. If you cannot find the postcode you need, it does not always mean that the postcode is wrong. Maybe just nobody added it to the map. You can make OpenStreetMap better by adding the missing data yourself, more info is found here: OpenStreetMap.

You can also follow this guide to lern more about the search in OsmAnd

Why does OsmAnd not offer access to Google Maps?
Firstly, OsmAnd is meant to support OpenStreetMap and tries to go that path as far as possible. Secondly, there are licensing issues. Although OsmAnd cannot be distributed with Google Maps data, you can, however, add the tile source manually, if you know the tile source URL.
OsmAnd shows only some speed camera traps
Due to the geodata taken from the OpenStreetMap project there are by now two methods how speed cameras are integrated in the raw OSM data:
  • 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
Currently, OsmAnd can only make use of the elements that consists of a single node. Analyzing of relations is to come in a future release.
OsmAnd seems to drain too much battery power

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.

Trip recording stops while screen is off

If you experience this, first of all check if not the corresponding setting 'Prevent standalone logging' is active in OsmAnd's settings under Plugin/Trip recording.

Secondly, update OsmAnd to 3.4 or higher. Different Android versions apply different strategies to reduce power consumption by killing apps running in the background. New versions of Android therefore deploy a Foreground service while recording a trip, visible in the Android notification bar, in an effort to keep the app active.

If you still experience issues, you may want to try these measures:

  • In your Android's Power or Power Savings setting, white-list OsmAnd to not being optimized
  • In Android's 'Apps', 'Applications', or 'App Manager' settings, find OsmAnd and tap it. You may find a line item regarding 'Power Savings' or 'Power Consumption': Tap it and exempt OsmAnd from power optimization measures.
  • If this fails, you may want to disable Power Saving on the device globally to see if your issues are caused by it at all

Update Android 9 and 10, Hardy, 2020-08-25: I have successfully tested the following Power saving settings under Android 9 and 10 (on Samsung devices), with particular attention if OsmAnd logging works reliably:

  • Device care / Battery:
    • Power mode = Optimized
    • Adaptive power saving = OFF (leaving ON may periodically use Medium power saving which inhibits OsmAnd logging)
  • Device care / Battery / App Power Management (under And9 called 'Settings'):
    • Adaptive battery = ON (candidate for 'OFF', but no problem detected so far)
    • Put unused apps to sleep = OFF (check list of sleeping apps)
    • Auto disable unused apps = OFF (seems not to exist anymore in And10)
    • Optimize settings = OFF (in And10 under Device care / Advanced)
  • Device Care / Advanced:
    • Notifications = ON
    • Auto optimization = ON
    • Auto restart = OFF
    • Optimize Settings = OFF
  • Apps / ... / Special access / Optimize battery usage / All = Leave all unchanged (looks like OsmAnd does not need to have Battery optimization disabled here)
I uninstalled the app/I'm using a new device. Do I have to buy OsmAnd again?
  • 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.
OsmAnd license and rules of use
Can I develop using OsmAnd source code?

OsmAnd is protected by the Creative Commons Attribution-NonCommercial-NoDerivs 2.0 Generic (CC BY-NC-ND 2.0) and GNU GENERAL PUBLIC LICENSE, Version 3 with an exception.

We strongly insist that you read 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.

OsmAnd visual elements

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
  • 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

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.

Development and Testing
How to setup development environment?

In order to setup development environment you need to install repo utility and use the following repo manifest!!!

Alternatively, you can use only git and checkout following repositories into correct folder names:

How to compile Android version (Gradle / Android Studio)?

First of all you need to setup development environment as mentionned above.

Ensure python binary is available on your system: python -V. If this fails, you may want to do a symlink from python2 or python3 binaries eg ln -s /usr/bin/python3 /usr/bin/python.

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")
  • # The ANDROID_SDK and ANDROID_HOME are where Android studio placed stuff
    export ANDROID_SDK=/[your-path]/Android/sdk
    export ANDROID_NDK=/[your-path]/android-ndk-r17b
    export ANDROID_HOME=/[your-path]/Library/Android/sdk

    You can also use our debug.keystore to make builds compatible with nightly build.

    Get sourcecode: repo init -u -m readonly.xml && repo sync

    Gradle: cd android/OsmAnd && ../gradlew cleanNoTranslate assembleFreedevLegacyFatDebug

    Android Studio: import android project and choose flavor 'assembleFreedevLegacyFatDebug'.

How to compile iOS version?
  1. Install XCode (not BETA!)
  2. Install command-line tools:

    $ xcode-select --install
  3. Install cmake (exactly this version!)

    Add this line to your .zshrc file: PATH="/Applications/":"$PATH"

    Reload your .zshrc file: source ~/.zshrc

    Verify everything works: cmake --version

  4. Install brew

    Run: /usr/bin/ruby -e "$(curl -fsSL"

  5. Install imagemagick with librsvg

    brew install --with-librsvg

  6. mkdir OsmAnd && cd OsmAnd
  7. Clone manually or via google repo tool: --with-librsvg

    $ mkdir ~/bin

    $ PATH=~/bin:$PATH

    $ curl > ~/bin/repo

    $ chmod a+x ~/bin/repo

    $ repo init -u

    after doing this, repo is installed, but "google repo tool couldn’t obtain manifest"

    if clone manually, in some cases “revision” is specified. You should use git clone -b (ex: < project path="core-legacy" name="osmandapp/OsmAnd-core.git" revision="legacy_core" />

    must be: git clone -b legacy_core core-legacy )

  8. Run ./ios/
  9. Open osmand.xcworkspace in XCode and build (the target should be -> OsmAnd Maps)
OsmAnd Development

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.

What intents does OsmAnd listen to?
Google geo intents
  • geo:latitude,longitude
  • geo:latitude,longitude?z=zoom
  • geo:0,0?q=my+street+address
  • geo:0,0?q=business+near+city
And OsmAnd specific intents:
Creating own maps and OsmAndMapCreator

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:

<node id='-24' visible='true' lat='1.3094000' lon='103.7784000'> <tag k='created_by' v='GPSBabel-1.4.2'/> <tag k='name' v='Street-Soccer Court'/> </node>

change it to contain an additional 'amenity' tag, like:

<node id='-24' visible='true' lat='1.3094000' lon='103.7784000'> <tag k='created_by' v='GPSBabel-1.4.2'/> <tag k='name' v='Street-Soccer Court'/> <tag k='amenity' v='point' /> </node>

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 Use OsmAndMapCreator.bat or 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 = params to the invocation. like:

javaw.exe -Xms64M -Xmx720M -cp "./OsmAndMapCreator.jar;./lib/*.jar" net.osmand.swing.OsmExtractionUI


javaw.exe -Dhttp.proxyHost= -Dhttp.proxyPort=8080 -Xms64M -Xmx720M -cp "./OsmAndMapCreator.jar;./lib/*.jar" net.osmand.swing.OsmExtractionUI

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 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 It is good to have a look at it but it is rather hard to understand, open, and edit it. A more convenient way to create your own rendering style is to create a style that depends on (inherits from) the default style. A good example of a custom 'depends' rendering style is

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.

OsmAnd Beta Testing

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: 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.
Note: Before changing to the test version, export your OsmAnd favorites. The new test version should simply continue using the favorites but as it is a beta version for testing, you never know.