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.
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
The modern mobile phones support WebGL and maps are acceptably performant, however native apps are still faster and ensure better compatibility with various devices.
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.