The Mobile Impact Platform has the ability to display GIS originated mapping data within apps and to allow users to interact with those maps for the purposes of collecting data including while the device is disconnected in an offline state.

At a high level, you must perform the following steps to add maps to your apps:

  1. Obtain shape file(s) for each map layer you wish to display
  2. Convert the shape file(s) into map content that may be consumed by the platform (please reach out to support for help with this)
  3. Upload converted file(s) to Mapbox Studio
  4. Optionally set styling within Mapbox Studio as needed
  5. Publish your Mapbox studio content which will provide URLs
  6. Create map resources within the Mi-Enterprise Middleware software using the URLs from #5 and the files from #3
  7. Add the maps to your apps via the designer
  8. Optionally interact with the map via scripting

To see this in action, we recommend you watch the following video:

Script within apps can be used to customize map display and provide users with an interactive map experience. It is recommended that you look within the API documentation for all _form.mapXXX functions for full details. 

A sample of what is possible within script is shown below. This code snippet pulls data from a GPS field and then plots a marker on a map after centering and zooming to the location:

var lat = parseFloat(_form.getValue("GPS").split(",")[0]);
var lon = parseFloat(_form.getValue("GPS").split(",")[
_form.mapCenter("Map", [lon, lat]);
_form.mapZoom("Map", 8);
_form.mapInit("Map", function (map, mapbox) {
  _GPSMarker = new mapbox.Marker()
            .setLngLat([lon, lat])