I am developing JavaME LWUIT application which needs to display some data on map.
And I'd like to use Google Maps for this.
I thought about the requirements to the maps and their user interface. They are
listed below:
- Pannable map. It should be possible to scroll the map using the touch interface or navigation arrow buttions which are displayed on the map.
- Zoomable map. At the best, there should be appropriate +/- buttons displayed on the map.
- Search location by address and move to it (menu command).
- Remember the last visited location.
- Marker for the current location.
- Markers with customable icon and text which is displayed when select the marker (click on it or select somehow).
I spent some time searching for appropriate Map Library for JavaME/LWUIT.
I expected to find a free library and map service (ha-ha).
See my results below:
- MIDMaps library. URL: http://www.jappit.com/blog/midmaps-google-maps-java-me-library/
That library uses the Google Static Map Service. Not bad... but it needs a lot further improvements...
I found the follwoing issues with that library:
- Markers: impossible to customize marker's icon and text. Displaying the marker's text on click/selection is not supported.
- Map Panning: no UI controls for this (arrow buttons). Doing panning with menu commands is not a user-friendly.
- Map Zooming: no UI controls for this (+/- buttons). Not so important...
- License: not permitted to use in a mobile app if not a Google Premier User. Not a problem...
- Nokia Maps API for JavaME. URL: http://www.developer.nokia.com/Develop/Maps/Maps_API_for_Java_ME/
Did not try. But looks like that lib fulfills all my requirements.
I am not sure about the following things:
- Quality of the maps.
- How much does it cost? I mean the cost of using the map service.
- Nutiteq lib which uses OpenStreetMap service. URL: http://www.nutiteq.com/map-api
Not free the lib, but the map service.
- Guidebee Map API. URL: http://www.guidebee.biz/
It's not free.
Now it's a time for me to ask questions. What should I do? Are there any advices?
Maybe I missed some possibilities or lib/services?
Thank you for your help!
After some additional investigations I decided to use Nokia Maps. And now I have a working application which displays interactive map with my data markers on it and also my current location.
I chose Nokia Maps API because it provided real dynamic maps (panning, zooming, tiling) and fulfilled all my requirements, except "Remember the last visited location" (can be implemented on my own).
I met the following problems:
Additional info related to the choosing proper map library can be found here Discussion on Nokia Forum