Android device users involved in geodesy, tourism, or working in the GIS field often encounter extension files .mbtiles. This format is a compressed SQLite database containing vector or raster map tiles, and is the de facto standard for storing huge amounts of cartographic information in a single file.

Standard galleries or file managers cannot display the contents of such files, since they are not ordinary images. To view and work with them, specialized ones are required GIS applications, capable of interpreting the database structure and rendering layers.

In this article we will analyze in detail what tools will allow you to work with maps without an Internet connection, how to correctly import heavy files and what settings are critical for the correct display of geodata on your smartphone.

Why standard apps do not open MBTiles

The format MBTiles was developed by MapBox specifically for the efficient storage and transmission of tile maps. A single file can contain thousands of individual images (tiles) or vector data, organized into a hierarchical structure of zoom levels.

Normal image viewers try to read the file as a single bitmap (JPEG or PNG), which results in an opening error. The Android system sees the file, but does not have a built-in codec or parser for the format SQLitethat is used as a container.

In addition, maps often have a complex projection system, usually Web Mercatorthat must be correctly transformed into the device's screen coordinates. Without a special rendering engine, you will only see a black screen or a message about a damaged file.

โš ๏ธ Attention: Trying to rename a file extension or open it through an archiver can damage the internal structure of the database, making the file unreadable for specialized apps.

For successful work, you will need an application that can connect to the file as a database and read metadata (name, description, coverage boundaries) and dynamically load the required tiles depending on your location and scale.

Top 3 applications for working with MBTiles maps

There are several powerful solutions on the Android market that allow you to work with offline maps. The choice of a specific tool depends on your tasks: whether you need simple viewing, professional geodetic survey or tourist navigation.

First on the list is OSMAnd. This is one of the most popular offline navigation apps. It supports connecting external mbtiles databases through the "Additional maps" menu. The app interface is full of functions, including building routes and recording tracks.

The second option is Locus Map. This solution is often chosen by professionals for its flexibility in customizing the display of layers. Locus allows you to create complex map configurations by overlaying mbtiles on top of satellite imagery or other vector sources.

  • ๐Ÿ—บ๏ธ OSMAnd โ€”the best choice for tourists and motorists, a completely free basic version with open source.
  • ๐Ÿ“ QField โ€”a professional tool for field work, ideal for engineers and surveyors working with QGIS projects.
  • ๐Ÿงญ Locus Map โ€”offers advanced track recording and sensor integration features, but requires a subscription for full access to features.

The third option, QField, deserves special mention. If you work in conjunction with the desktop version of QGIS on your computer, this application will allow you to open projects directly, including connected mbtiles, with full preservation of object attribute information.

๐Ÿ“Š What application do you use for maps?
OSMAnd
Locus Map
QField
Google Maps
Other

Instructions for adding maps to OSMAnd

The process of importing maps c OSMAnd may not seem obvious to beginners, since the application does not always automatically scan all folders on the device. Proper organization of the file structure is the key to success.

First you need to create the correct directory. On a memory card or in the internal memory of your smartphone, create a path Android/data/net.osmand/files/maps2. This is where you should place your file .mbtiles.

After copying the file, launch the application. Go to the main menu, select "Customize Map" (layers icon), then scroll down to the "Additional Maps" section. Click on the add button and select "Add tiles database file."

โ˜‘๏ธ Preparing a map for OSMAnd

Done: 0 / 5

If the file does not appear in the list, check the application's access rights to the storage in the Android settings. In modern versions of the system (Android 11 and higher), access to the folder may be limited, so sometimes it is easier to select the file through the built-in application explorer when adding it for the first time. Android/data may be limited, so sometimes it's easier to select the file through the app's built-in explorer when adding it for the first time.

โš ๏ธ Attention: Files larger than 2 GB may not be indexed correctly on FAT32 file systems. It is recommended to use the exFAT file system or the internal memory of the device.

After successful addition, the map will appear in the list of available layers. You can control its transparency, stacking order and visibility at different zoom levels through the settings of a specific layer.

๐Ÿ’ก

To speed up work with large maps, disable automatic downloading of updates for this specific file in the map management settings.

Setting up QField for professional work

Application QField works on a slightly different principle. It is focused on opening ready-made projects, and not just connecting pictures. To see your mbtiles map, it must be part of a QGIS project.

On your computer in the QGIS app, add the mbtiles layer to the project, configure display styles and save the project. Then use the QFieldSync plugin to export the project to your smartphone. This process will automatically copy all associated files, including tile databases, to the correct directory.

If you want to simply open a file without a project, this is more difficult to do in QField, since the application expects a project structure .qgs or .qgz. However, you can create a simple project containing just this layer and export it.

Path for QField projects:

/Android/data/ch.opengis.qfield/files/projects/

It is important to understand the difference between vector and raster mbtiles. Vector tiles in QField can be styled on the fly according to the rules specified in QGIS, while raster tiles are displayed as ready-made images.

What is the difference between vector and raster MBTiles?

Vector tiles contain geometric data (points, lines, polygons) and take up less space, allowing you to change the display style. Raster tiles are ordinary pictures cut into squares; they weigh more, but look exactly the same as on the source site.

Professionals value QField for its ability to edit data. If your mbtiles map contains editable layers (which is rare for the format itself, but possible in the context of the project), you will be able to make changes in the field and synchronize them with the server.

To choose the optimal tool, it is worth comparing the key characteristics of applications in the context of working with heavy cards. Below is a table to help you make a choice depending on your needs.

Features OSMAnd Locus Map QField
License type Freemium / Open Source Freemium Free (Open Source)
Vector support Limited High Full (via QGIS)
Working with attributes Basic Advanced Professional
Setting up complexity Average High Very high

As can be seen from the table, OSMAnd is the most balanced solution for the average user. Locus Map wins in the flexibility of interface settings and tracking, and QField has no competitors in the field of engineering research.

It is worth noting that rendering performance strongly depends on the processor power of your smartphone. Vector maps require more computing resources to draw than raster maps.

๐Ÿ’ก

For simple viewing of maps without editing and complex projects, choose OSMAnd - this will save time on setup and ensure stable operation.

If you plan to use maps in commercial activities or for precise measurements, investing time in mastering the QGIS + QField combination will pay off with the ability to fully control data.

Solving performance and display problems

A common problem when working with mbtiles on Android is slow scrolling of the map or the application crashing when zoomed in too closely. This is due to the application trying to unpack and render a large number of tiles at the same time.

To optimize performance, it is recommended to use maps with pre-generated zoom levels. If the map is generated on the fly from vector data, the CPU load increases many times over.

Check the compression format inside the database. The most effective format for raster maps is WebP or PNG with a palette. The JPEG format may take up less space, but compression artifacts may interfere with reading fine card details.

โš ๏ธ Note: Application interfaces and methods for connecting external cards may change with software updates. Always check the Help section within the app for the latest instructions.

Also make sure the map file is not stored on a slow microSD card. The internal memory of modern smartphones (UFS) provides significantly higher random read speeds, which is critical for SQLite-type databases.

If the map is displayed in the wrong place (coordinate shift), check the coordinate system. Most web maps use EPSG:3857, while some government data may be in EPSG:4284 or other local projections that require recalculation.

๐Ÿ’ก

If the application is slow, try disabling the rendering of terrain shadows or 3D buildings in the settings - this will significantly reduce the load on the graphic processor.

Frequently asked questions (FAQ)

Is it possible to convert MBTiles into regular JPEG images?

Technically this is possible using desktop software like QGIS or special Python scripts, but the practical meaning is lost. You will receive thousands of individual files that cannot be conveniently viewed on your phone without a special collector.

Why does the map open, but only a white grid is visible?

Most likely, the application cannot find tiles for the current zoom level. Make sure the mbtiles file contains data for the zooms you are looking at. Also check if the coordinate axes were inverted when creating the file.

What is the maximum number of MBTiles files that can be connected at the same time?

The limit depends on the RAM of the smartphone and the optimization of the specific application. OSMAnd and Locus can work with dozens of connected files, but activating more than 5-7 heavy layers at the same time can lead to unstable performance.

Does Google Maps support MBTiles files?

No, the standard Google Maps application does not support importing custom mbtiles files for offline use. To work with this format, you must use specialized GIS applications described above.

Where can you get high-quality maps in the MBTiles format?

Sources can be open OpenStreetMap data (exported through services like Thunderforest or your own scripts), data from government geoportals or maps generated independently in QGIS from vector sources.