Switching Tile Servers

If you have access tokens for TomTom and NextBillion.ai map tiles, you can switch the active tile server using the APIs below.

Enum

1
public enum NGLWellKnownTileServer {
2
NGLMapTiler, // NextBillion.ai tile service
3
NGLTomTom // TomTom tile service
4
}

Default: The SDK uses TomTom as the default tile service provider.

Set at App Initialization

Specify the desired tile server and the corresponding access token during SDK initialization (e.g., in your Application):

1
// Use NextBillion.ai Map Tiles
2
Nextbillion.getInstance(
3
getApplicationContext(),
4
accessToken,
5
NGLWellKnownTileServer.NGLMapTiler
6
);

Runtime Switching

To switch the tile server at runtime, use setWellKnownTileServer:

1
// Read current server
2
NGLWellKnownTileServer currentServer = Nextbillion.getWellKnownTileServer();
3
4
// Compute the new server
5
NGLWellKnownTileServer newServer =
6
(currentServer == NGLWellKnownTileServer.NGLTomTom)
7
? NGLWellKnownTileServer.NGLMapTiler
8
: NGLWellKnownTileServer.NGLTomTom;
9
10
// Update global setting
11
Nextbillion.setWellKnownTileServer(newServer);

Recommendations

  • Scope: setWellKnownTileServer is a global setting. Newly created map instances will use the new server.
  • Existing maps: If existing MapView/NextbillionMap instances doesn’t refresh automatically, re-apply style or recreate the map to fetch tiles from the new source.
  • Caching & loading: After switching, you may briefly see mixed or blank tiles while resources reload.