HERE iOS SDK Developer's Guide

HERE Map Data Management

Much of the functionality offered through the HERE SDK depends on HERE Map Data being downloaded and cached on the device. This section describes different approaches that you can take to manage map data download.

Passive Approach

The passive approach is where you allow the SDK to download map data as needed. A typical example is where a user is panning the map, and this triggers on-demand download of the needed map data to render the map.

Map data downloaded in this way is cached permanently and may be used for offline operation, in cases where a network connection is not available or not desired, such as when the device is in roaming mode. However, there is no way for you to know if sufficient data has been downloaded to enable all offline operations, such as offline search or routing.

Active Approach

The active approach is where you explicitly preload map data. You do this by selecting from a list of map packages. A map package may be a state (such as California), region, or a country (such as England). Preloading map data guarantees that offline operations are possible in cases where a network connection is not available or not desired.

Note: If map data is needed but not available in one of the preloaded map packages (for example, if a user panned the map to a new country), the SDK dynamically downloads the needed data. This means that the map data cache on the device contains a mixture of preloaded map packages and on-demand downloaded map data.

Keep Data Up-to-Date

Irrespective of which approach your app supports, it is important that you are aware of your responsibility to ensure that your app is using the latest map data release. HERE releases quarterly (every three months) updates to the map data. You must use SDK APIs to check for map data updates, and if updates are available, trigger the update. It is recommended that your app perform such a check every time it starts. For more information on how to check for map data updates, see the API Reference for the NMAMapLoader class.

Important: Some SDK features may return errors if the map data is more than six months old.
Note: Incremental or patch updates are supported when upgrading from one version to the next version, helping to reduce the amount of data downloaded. Skipping versions may result in a full update and a large amount of data downloaded.