LayerConfiguration

public struct LayerConfiguration : Hashable

A class to configure which layers should be enabled or disabled in the OCM map data. Disabling a layer allows to reduce the amount of data that will be downloaded or prefetched from the internet, for example, when panning the map view online or when downloading maps for offline use.

LayerConfiguration changes made via SDKOptions require sdk.maploader.MapUpdater to align previously downloaded content. To ensure that the changes in SDKOptions affect the map data, it is recommended to trigger a map update. Without calling mapUpdater.updateCatalog(...), the adjustments will apply only to future map downloads and will not impact the currently installed map data, either in the cache or in the persisted storage. Note that calling updateCatalog(...) will update the version, only when a map update is available in the catalog.

Notes

  • The LayerConfiguration is only available for the Navigate licenses that contains the offline maps feature. It has no effect on other license.

Note that the RENDERING layer is a base layer that cannot be disabled: Therefore, it is not necessary to explicitly add the layer to a feature configuration - it will be always enabled.

  • The LayerConfiguration cannot be set separately for a region, it will be applied globally for all regions that will be downloaded in the future.
  • It is not possible to specify a separate LayerConfiguration for the map cache and offline maps. The LayerConfiguration will be always applied to both.
  • If a LayerConfiguration is applied, then only the listed features will be enabled, all others will be disabled. For example, if you want to disable only one feature, then all other features need to be present, or they will be also disabled.

The LayerConfiguration controls which content will be subject of

  • map download for features in enabledFeatures(),
  • explicit prefetching using sdk.prefetcher.RoutePrefetcher, sdk.prefetcher.PolygonPrefetcher and implicit prefetching, such as when displaying a map view, for features in implicitlyPrefetchedFeatures().