Map API

Nutiteq Maps Lib SDK enables developing advanced mobile mapping applications.
Platforms: Android, RIM BlackBerry, Java ME (J2ME)
Download maps API SDK »
Untitled Document

Products

» View demos
» Downloads

Uudised

Viimane: Thu, 15 Mar 2012 14:51:08
Teema: Vabad töökohad pakkuda
Veel uudiseid »

Fast map streaming

2 replies [Last post]
jaak
User offline. Last seen 1 day 22 hours ago. Offline
Joined: 06/19/2008

It is often asked how to make maps to load faster. Sometimes, depending on your network, platform etc there is noticeable delay before each map image piece (tile). Quick answer is that you should use map streaming to fix it, and the Lib SDK supports it.

Basically you have two options:
a) use a map server which already supports map streaming. Of course also Lib SDK has to support the API. There is no standard tile streaming API, so we support own "invention" here. As public services we have right only Nutiteq own test server which connects to the CloudMade tile server (but CloudMade will be ready soon with own implementation, then this test will be obsolete). Currently it can be used with following line of code:
mapItem.setMap(new
NutiteqStreamedMap("http://aws.nutiteq.com/mapstream.php?cmkey=YOUR-CLOUDMADE-KEY&", "CloudMade", 64, 0, 19));

You need to import com.nutiteq.maps.NutiteqStreamedMap also.

b) use your own map server, and add Lib SDK supported streaming API for that. Check MGMaps Server API document in the developers page, chapter 7.3 Streamed Map Tiles, it describes the API. The client side will be the same, only base URL will be changed to yours.

Some additional hints:

  1. Generally CloudMade tiles are much faster than OpenStreetMap public server.
  2. Optimize also speed from your client to server.
  3. Maximize your server response, using reasonable caching
  4. Experiment with different tile sizes. Example code above uses 64-pixel tiles, but API itself and client supports also 128 and 256-pixel tiles. With faster networks (3G+) it may look nicer.
  5. Lib SDK supports also streaming of KaMap API tiles.

ps. there is short note in FAQ about this topic.

/JaakL

jaak
User offline. Last seen 1 day 22 hours ago. Offline
Joined: 06/19/2008

Changed tile size with Nutiteq streaming test proxy:
mapComponent.setMap(new NutiteqStreamedMap(
"http://aws.nutiteq.com/mapstream.php?cmkey=YOUR-CLOUDMADE-KEY&ts=128&","Cloud Made", 128, 0, 19));

/JaakL