Build mobile apps with maps using SDK

Inserts maps in websites with a simple iframe.

You can create a mobile app with maps either using an SDK or JavaScript and HTML. You can also use QT SDK to develop desktop software.

It is possible to combine map data from MapTiler Cloud with data from the OpenMapTiles project for off-line mode.

Native mobile apps

Using mobile SDK to create a native mobile app is mostly the best choice. The code is translated into native code and has lower hardware requirements. There are SDKs for both Android and iOS.

The maps are encoded in the widely used and openly documented vector tile format. This means the tiles are compatible with all software tools implementing this format specification. MapTiler Cloud uses the open GL Style for defining the map design.

The open-source Mapbox SDK for iOS and SDK for Android provides the most natural way how to display the tiles and styles in a mobile app natively. The source code of the Mapbox SDKs is available on GitHub.

There are also other open-source SDKs for native mobile apps like TangramES or Carto/Nutiteq SDK.

Sample app for Android and iOS

There is a sample app for iOS and Android, which demonstrates the capabilities of mobile SDK and its’ performance. You can download it for free from Google Play and App Store or get the source code for further development of their own app.

Mobile app with online maps powered by vector tiles

These apps show the vector map tiles displayed from a custom tile server, so you can choose MapTiler Cloud service or implement your own. Map tiles can be also bundled with the mobile app or users can download a tileset for a region of their choice.

Displaying of the tiles directly from MBTiles, running in an offline environment, requires patching of Mapbox SDKs.

Packed web applications

An alternative way for the development of multiplatform mobile apps is a use of the existing JavaScript web viewers while using HTML, CSS, and JavaScript and packaging the web applications into native applications with a framework like Apache Cordova.

The modern mobile phones support WebGL and maps are acceptably performant, however native apps are still faster and ensure better compatibility with various devices.

While developing the mobile apps in JavaScript users can also use native components such as Cordova app React Native.

Desktop and embedded apps

For the development of native desktop applications and software for hardware appliances with embedded mapping systems powered by Linux, one can use the open-source QT SDK. It also has an ability to load the vector tiles from OpenMapTiles project and run completely off-line.

Mapbox GL Native does not compile (yet) on Microsoft Windows. So for fully multiplatform desktop apps with vector tile maps inside, the embedded web window (possibly with CEF - Chromium Embedded Framework and enabled WebGL support) is still the best option.