From OpenStreetMap Wiki
Jump to navigation Jump to search

MGMaps Lib SDK is open source (GPL, with commercial license and support provided) J2ME mapping SDK, it enables creating easily Java-based mobile mapping applications. It is partly based on the popular application, but Lib SDK is not ready-made end-user application, unlike many available mobile mapping and GPS tracking apps (GMM, MGMaps,J2MEMap etc). Instead, Lib SDK is mobile mapping library for J2ME application developers, it's idea is to enable customized mobile mapping mashups, just as easily like Google maps API enables it for web.

Custom mobile mapping mashup

You just need to know some Mobile Java (J2ME, Blackberry UI, Android) basics to create your application, and with Lib SDK you can easily add mapping, directions, placename search, POI layers, GPS navigation etc. Making basic Form with dynamic map requires just following lines of J2ME code:

mapItem = new MapItem("Map", "abcdtrial", Mapper.instance, 
           150, 150, new WgsPoint(24.764580, 59.437420), 12);
mMainForm = new Form("Here is Tallinn");

Freedom of map content

Lib SDK is not technically related to any particular map service, but samples are mainly based to OpenStreetMap services, as it is definitely the best free global source. However, many developers use their own or commercial servers/content in their application with MGMaps Lib SDK, with their own map server API-s (or offline file format) and even with own coordinate systems.



MGMaps Lib SDK is actively developed product, current key features (version 0.7.0) :

  • Mapping
    • Mapping with OSM tiles
    • Mapping with other tile-based map services
    • Mapping with mobile optimized tiles (smaller tiles, streaming)
    • Caching of maps
    • Offline maps, from flash drive of phone
    • User interaction: keys, pointer
  • Overlays
    • Add overlays to map (markers, lines, polygons)
    • Add KML data to map as dynamic layer (also marker styles)
  • Other mapping features
    • Search place-names and POIs (on-line)
    • Routing, search directions (OpenLS or KML-based services, on-line)
  • Mobile positioning
    • Unified API to position user, using different methods
    • Internal GPS (JSR-179)
    • Cell-ID
    • External Bluetooth GPS (NMEA)
  • Other features
    • Mobile networking optimized client-server interaction and memory consumption
    • Minimized footprint , below 50 KB JAR

Supported devices

Compliance with specific device depends on final application implementation. Nutiteq is testing and optimizing library on tens of different devices, support is provided in device group level.

  • J2ME: MIDP 2.0 CLDC 1.1
    • Example groups: Nokia S40, S60, SonyEricsson JP3+, SJP 3+, Windows Mobile with Intent, Esmertec and Sun JVMs, Samsung, Motorola
  • Blackberry UIApplication API (OS version 4.0 and up)
  • Google Android


MGMaps Lib SDK is developed and supported by Nutiteq. Homepage:, downloads and demos: