Navteq is one of the leading MAP Providers and other LBSP (location based service products). Navteq is owned by Nokia.
Navteq had developed an iPhone SDK which allowed the iPhone developers to integrate Navteq maps in iPhone applications.
Our task involved redeveloping the SDK and the reference application for Android platform.
The SDK had features to display map, real time traffic, point of interest search, location based advertisement and route calculation between points.
Challenges faced were:-
- Understanding the iPhone code by android team because there were no written specs and the only specs available were in form of iPhone SDK code which was good as well as bad.
- During development an important lesson was learnt about the Singleton pattern and how it did not work well for the Android platform(similar issue on another memory constrained environments) and was becoming a cause for memory leaks.
- GPS polling was draining battery and had to be carefully managed
- Special care had to be taken to make the text and graphics look good on multiple screen resolutions.
- Performance, related to garbage collection, also became a problem which had to be solved using Open GL
- Parsing json response which would use less memory and perform faster