Migrate to 3.1.9
This guide outlines the breaking changes introduced in SDK version 3.1.9. Required updates may vary depending on your use case.
Additionally, new features and bugfixes have been introduced and are not documented here. For a comprehensive list of changes, please refer to the changelog.
This release removes a previously deprecated method and extends several enums with new values. Most projects only need updates if they relied on the removed getRoadInfoImg method or use exhaustive switch statements over the affected enums. iOS rendering has also moved to Metal, which may require visual re-testing.
The getRoadInfoImg method has been removed from the NavigationInstruction class
The getRoadInfoImg method, deprecated in 3.1.8, has been removed. Use the getRoadInfoImgByType method instead, which avoids the need to deallocate RoadInfo objects and provides significant performance improvements when receiving frequent position updates.
Before:
RoadInfoImg image = instruction.getRoadInfoImg(instruction.currentRoadInformation);
After:
RoadInfoImg image = instruction.getRoadInfoImgByType(RoadInfoType.currentRoadInformation);
Use the following RoadInfoType values to retrieve the corresponding RoadInfoImg:
currentRoadInformationforcurrentRoadInformationnextRoadInformationfornextRoadInformationnextNextRoadInformationfornextNextRoadInformation
The shadow value has been added to the HighlightOptions and RouteRenderOptions enums
The shadow value was added to the HighlightOptions and RouteRenderOptions enums.
If you use either enum in an exhaustive switch statement, add a case for the new shadow value.
Always use the enum value names instead of hardcoding the numeric ids to ensure compatibility with future changes.
The restrictionsUpdated value has been added to the NavigationInstructionUpdateEvents enum
The restrictionsUpdated value was added to the NavigationInstructionUpdateEvents enum, signaling that the active route restrictions have changed during navigation.
If you use this enum in an exhaustive switch statement, add a case for the new restrictionsUpdated value.
This value is emitted when the new onRestrictionsUpdated callback of the startNavigation and startSimulation methods reports updated restrictions, allowing you to react to changes exposed through the currentRestrictions property of the NavigationInstruction class.
iOS now uses Metal rendering
On iOS, the SDK now renders the map using Metal instead of the previous backend. No code changes are required, but we recommend re-testing map appearance and rendering performance on iOS devices to confirm your application behaves as expected.