Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Check the Migration Guide for complete steps required for upgrading to a new version.
Update all applications to version 2.19.0 or later to access the newest map available. To support recent enhancements, a change in the map format was required.
Legacy map formats will remain available until April 2027. However, the registerOnWorldwideRoadMapSupportDisabled callback will be triggered when using an older SDK.
Due to improvements of our SDK and map data, we kindly ask you to update your applications and projects with any SDK revision released starting with October 2024 in order to continue using the online Magic Lane map-related services and to continue receiving map updates.
[3.1.2] - 2025-10-17
Added
clearRouteInstructionmethod to theMavViewclass
Changed
imagegetter from theOverlayItemclass is now deprecated and has been replaced with thegetImagemethod
Fixed
- Issues regarding callbacks in
startNavigationandstartSimulationmethods from theNavigationServiceclass
[3.1.1] - 2025-10-16
Added
vehicleRegistrationgetter in theRoutePreferencesclass
Fixed
- Distribution via pub.dev now works without errors on iOS
mapDetailsQualityLevelsetter from theMapViewPreferencesno longer crashes on iOS- Swift Package Manager integration issues
[3.1.0] - 2025-10-16 [YANKED]
Note
- Yanked because of Swift Package Manager (SPM) integration issues that make the project fail to build or run on iOS.
Added
polygonAreaproperty to theMapViewRenderInfoclassplateNumberproperty to classes extendingVehicleRegistration:ElectricBikeProfile,ElectricBikeProfile,MotorVehicleProfile,CarProfile,TruckProfileVehicleRegistrationclass
Removed
areaandareaSecondmembers from theMapViewRenderInfoclass are now deprecated
Changed
- updated minimum SDK version to
3.9.0and flutter version to3.35.0 - added
scenicRoutingAttributesandutf8Stringsvalues to theMapExtendedCapabilityenum - the
areaproperty from theMapViewRenderInfoclass changed from field to getter VehicleRegistrationis now base class forElectricBikeProfileandMotorVehicleProfile
Fixed
- the
onProgresscallback from theasyncDownloadmethod from theContentStoreItemnow gets called when it should - the SDK language now matches the device language by default. The default voice is now a TTS computer voice matching the default SDK language
[3.0.0] - 2025-10-02 [YANKED]
Added
magiclane_maps_flutter.dartbarrel export fileTrafficParameters,InvalidParameterFormat,PublicTransportParameters,SocialReportParameters,RoadMapParameters,SafetyParameters,ContentParameters,OverlayItemParameters,VoiceParameters,StyleParametersclassesisScalablegetter to theImgBaseclass and extending classes (LaneImg,SignpostImg,RoadInfoImg,AbstractGeometryImg)sizegetter to theRenderableImgclassremovemethod to theExtraInfoclassgrabOverlayOfflineData,cancelGrabOverlayOfflineData,enableOverlayOfflineDataGrabber,disableOverlayOfflineDataGrabber,isOverlayOfflineDataGrabberSupported,isOverlayOfflineDataGrabberEnabledmethods to theOverlayServiceclasstollSectionsgetter to theRouteSegmentBaseclass and extending classestollSectionsproperties to theRouteBaseclass and extending classesroadInfogetter to theGemImprovedPositionclass
Removed
instancestatic property from thePositionServiceclassregisterMoveCallback,registerLongPressCallback,registerPinchSwipeCallback,registerTouchMoveCallback,registerRenderMapScaleCallback,registerCursorSelectionUpdatedMapSceneObjectCallback,registerCursorSelectionUpdatedPathCallback,registerTouchCallback,registerHoveredMapLabelHighlightedOverlayItemCallback,registerViewRenderedCallback,registerCursorSelectionUpdatedTrafficEventsCallback,registerHoveredMapLabelHighlightedLandmarkCallback,registerCursorSelectionUpdatedOverlayItemsCallback,registerPinchCallback,registerTwoDoubleTouchesCallback,registerTwoTouchesCallback,registerDoubleTouchCallback,registerViewportResizedCallback,registerMapViewMoveStateChangedCallback,registerCursorSelectionUpdatedRoutesCallback,registerTouchPinchCallback,registerSwipeCallback,registerFollowPositionStateCallback,registerTouchHandlerModifyFollowPositionCallback,registerShoveCallback,registerCursorSelectionUpdatedMarkersCallback,registerMapAngleUpdateCallback,registerSetMapStyleCallback,registerHoveredMapLabelHighlightedTrafficEventCallback,registerCursorSelectionUpdatedLandmarksCallbackmethods from theGemMapControllerclass as they were deprecated and replaced with theregisterOnTouchHandlerModifyFollowPosition,registerOnMove,registerOnLongPress,registerOnTwoDoubleTouches,registerOnSwipe,registerOnMapAngleUpdate,registerOnViewRendered,registerOnTouch,registerOnTwoTouches,registerOnPinchSwipe,registerOnShove,registerOnFollowPositionState,registerOnCursorSelectionUpdatedLandmarks,registerOnCursorSelectionUpdatedMapSceneObject,registerOnCursorSelectionUpdatedRoutes,registerOnCursorSelectionUpdatedMarkers,registerOnHoveredMapLabelHighlightedOverlayItem,registerOnDoubleTouch,registerOnCursorSelectionUpdatedTrafficEvents,registerOnHoveredMapLabelHighlightedLandmark,registerOnRenderMapScale,registerOnMapViewMoveStateChanged,registerOnTouchMove,registerOnTouchPinch,registerOnCursorSelectionUpdatedOverlayItems,registerOnViewportResized,registerOnCursorSelectionUpdatedPath,registerOnHoveredMapLabelHighlightedTrafficEvent,registerOnSetMapStyle,registerOnPinchmethodsregisterOnProgressCallbackandregisterOnCompleteWithDataCallbackmethods from theProgressListenerclass were deprecated and replaced with theregisterOnProgress,registerOnCompleteWithDatamethodsEVRoute,EVRouteSegment,EVRouteInstruction,EVProfileclasses,toEVRoutemethod from theRouteclass,toEVRouteSegmentmethod from theRouteSegmentclass,toEVRouteInstructionmethod from theRouteInstructionclass,evProfileproperty from theRoutePreferencesclassgetPreferencesmethod fromDataSourceclass
Changed
- the package name has been renamed from
gem_kittomagiclane_maps_flutter. The main distribution method is now pub.dev - the
MapStatusenum renamed toContentStoreStatus. Thestatusparameter from theregisterOnAvailableContentUpdateandregisterOnWorldwideRoadMapSupportStatusmethod from theOffBoardListenerclass - all previous instance methods and properties from
PositionServiceare now static methods - the
previewDatagetter has been renamed topreviewDataParameterListin theOverlayItemclass. A newpreviewDataproperty from theOverlayItemclass changed fromSearchableParameterListtoOverlayItemParameters? - added
allowResizenamed optional parameter to thegetRoadInfoImagemethod from theRouteInstruction,RouteInstructionBase,EVRouteInstruction,PTRouteInstructionclasses - added
allowResizenamed optional parameter to thegetLaneImagemethod from theNavigationInstructionclass - added
allowResizenamed optional parameter to thegetImagemethod from theSignpostDetailsclass - added
dataSourcenamed optional parameter to theprepareReportingmethod from theSocialOverlayclass - the
dataparameter of theonResultcallback from thegetPreviewDatamethod from theRouteTrafficEventandTrafficEventclasses changed type fromSearchableParameterList?toTrafficParameters? - the
dataparameter of theonResultcallback from thegetPreviewDatamethod from theRouteTrafficEventclass changed type fromSearchableParameterList?toTrafficParameters? - the type of the
contentParametersproperty from theContentStoreItemclass changed fromSearchableParameterListtoContentParameters? - the
onProgressCallbackoptional parameter of theasyncDownloadmethod from theContentStoreItemclass was removed as it was deprecated and replaced withonProgresscallback - the
itemsandisCachedparameters of theonCompletecallback from theasyncGetStoreContentListmethod from theContentStoreclass are no longer nullable. When operation finishes with error theitemsis empty list andisCachedis false.
Fixed
- App freezing when the SDK is released and dangling
DataSourceare kept alive byRecorderConfigurationinstances centerOnRoutePartmethod from theGemViewclass throwing exceptionaddListmethod from theMapViewMarkerCollectionsclass displaying markers with incorrect aspect ratio icons when the images are in portrait modenextNextTurnInstructionandnextTurnInstructionfrom theNavigationInstructionclass now return capitalized strings if the first letter is a latin charactergetPTStopInfofrom theOverlayItemclass no longer crashes and has improved performanceclearAllButMainRoutemethod from theMapViewRoutesCollectionclass no longer crashes when no routes are present or no render settings are set for the main route
[2.27.0] - 2025-09-18
Added
viewportCentergetter to theGemViewclassgetCoordinate,getCoordinatesCount,deleteRangemethods to theMarkerclasspolylineTypeproperty to theMarkerRenderSettingsclassgetSdkLogDumpPathmethod to theDebugclasshitTest,save,loadmethods to theMarkerCollectionclass and extendingMapViewMarkerCollectionsandMarkerSketchesclassesregisterOnBrowseSessionInvalidatedmethod to theLandmarkStoreListenerclassroadInfogetter to theGemImprovedPositionclassdisposemethod andpointerIdgetter to most classes
Removed
NavigationEventTypeenums as they were deprecated and the functionality is already implemented via other callbacksExternalPositionDataclass and thepositionFromExternalDatamethod from theSenseDataFactoryas they were deprecated. TheproducePositionmethod from theSenseDataFactoryclass should be used insteadMapViewOverlayCollection,MarkerCustomRenderDataclasses as they were unusedpitchInDegrees,headingInDegreesproperties from theGemViewclass as they were deprecated. Other properties exist, providing the same featuresisEmptygetter from theGeographicAreaand extendingTilesCollectionGeographicArea,RectangleGeographicArea,PolygonGeographicAreaandCircleGeographicAreaclasses. TheisDefaultgetter should be used insteadtimestampproperties from theGemPositionclass as it was deprecated. Use theacquisitionTimeproperty insteadgetImprovedPosition,getPositionmethods from thePositionServiceclass as they were deprecated. Use the existingimprovedPositionandpositiongetters insteadsetTTSLanguage,setAllowConnectionmethods from theSdkSettingsclass as they were deprecated. Use thesetTTSVoiceByLanguageandsetAllowInternetConnectionmethods insteadhorizontalaccuracy,verticalaccuracyproperties from theCoordinatesclass as they were deprecateddeviceModelproperty from theRecorderConfigurationclass as it was deprecated. Set the value in thehardwareSpecificationsproperty insteadrefreshContentStoremethod from theContentStoreclass as it was deprecated. UserefreshinsteadsetActivityRecordmethods from theRecorderclass as they were deprecated. UseactivityRecordsetter insteadsetNorthFixedFlag,rotationAngleproperties from theMapViewPreferencesclass as they were deprecated. Other properties exist, providing the same featuresoverlaysproperty from theMapViewPreferencesclass as the returned object had very limited functionality.getWikiPageTitle,getWikiImagesCount,getWikiPageDescription,getWikiPageUrl,getWikiPageLanguagemethods from theExternalInfoclass as they were deprecated. Use the existing getters instead
Changed
- Renamed
IGemPositionListenertoGemPositionListenerand previousGemPositionListenertoGemPositionListenerImpl. TheaddPositionListenerandaddImprovedPositionListenermethods fromPositionServicenow return an object whose current class is the newGemPositionListener. TheGemPositionListenermethod takes as parameter aGemPositionListenerobject instead ofIGemPositionListener. registerOnProgressCallbackandregisterOnCompleteWithDataCallbackmethods from theProgressListenerclass were deprecated and replaced with theregisterOnProgress,registerOnCompleteWithDatamethodsregisterTouchHandlerModifyFollowPositionCallback,registerMoveCallback,registerLongPressCallback,registerTwoDoubleTouchesCallback,registerSwipeCallback,registerMapAngleUpdateCallback,registerViewRenderedCallback,registerTouchCallback,registerTwoTouchesCallback,registerPinchSwipeCallback,registerShoveCallback,registerFollowPositionStateCallback,registerCursorSelectionUpdatedLandmarksCallback,registerCursorSelectionUpdatedMapSceneObjectCallback,registerCursorSelectionUpdatedRoutesCallback,registerCursorSelectionUpdatedMarkersCallback,registerHoveredMapLabelHighlightedOverlayItemCallback,registerDoubleTouchCallback,registerCursorSelectionUpdatedTrafficEventsCallback,registerHoveredMapLabelHighlightedLandmarkCallback,registerRenderMapScaleCallback,registerMapViewMoveStateChangedCallback,registerTouchMoveCallback,registerTouchPinchCallback,registerCursorSelectionUpdatedOverlayItemsCallback,registerViewportResizedCallback,registerCursorSelectionUpdatedPathCallback,registerHoveredMapLabelHighlightedTrafficEventCallback,registerSetMapStyleCallback,registerPinchCallbackmethods from theGemMapControllerclass were deprecated and replaced with theregisterOnTouchHandlerModifyFollowPosition,registerOnMove,registerOnLongPress,registerOnTwoDoubleTouches,registerOnSwipe,registerOnMapAngleUpdate,registerOnViewRendered,registerOnTouch,registerOnTwoTouches,registerOnPinchSwipe,registerOnShove,registerOnFollowPositionState,registerOnCursorSelectionUpdatedLandmarks,registerOnCursorSelectionUpdatedMapSceneObject,registerOnCursorSelectionUpdatedRoutes,registerOnCursorSelectionUpdatedMarkers,registerOnHoveredMapLabelHighlightedOverlayItem,registerOnDoubleTouch,registerOnCursorSelectionUpdatedTrafficEvents,registerOnHoveredMapLabelHighlightedLandmark,registerOnRenderMapScale,registerOnMapViewMoveStateChanged,registerOnTouchMove,registerOnTouchPinch,registerOnCursorSelectionUpdatedOverlayItems,registerOnViewportResized,registerOnCursorSelectionUpdatedPath,registerOnHoveredMapLabelHighlightedTrafficEvent,registerOnSetMapStyle,registerOnPinchmethods- removed
mevalue from theRoutePathAlgorithmenum as it was deprecated. Use themlvalue instead - removed
downloadWaitingvalue from theContentStoreItemStatusenum as it was deprecated. Use the other more specializedwaiting...values instead - added
geofence,overlays,valuesvalue to theContentStoreItemStatusenum - the type of the
nextNextInstruction,previousInstruction,nextInstructionproperties from theNavigationInstructionclass changed fromRouteInstructiontoRouteInstruction? - the type of the
jsonproperty from theMapDisposedExceptionandObjectNotAliveExceptionclasses changed fromStringtoMap<String, dynamic> - the parameters
onCompleteCallbackparameter of theconvertmethod from theProjectionServiceclass, thegetTimezoneInfoFromTimezoneIdandgetTimezoneInfoFromCoordinatesmethods from theTimezoneServiceclass, thegetHourlyForecast,getCurrent,getDailyForecast,getForecastmethod from theWeatherServiceclasses, theimportLandmarksWithDataBufferandimportLandmarksmethods from theLandmarkStoreclass, theasyncGetStoreFilteredListmethod from theContentStoreclass and theupdatemethod from theContentUpdaterclass has been removed as it was deprecated. TheonCompleteparameter with the same arguments should be used instead. - the
onRouteCalculationStartedandonRouteCalculationCompletedcallbacks were added to the parameters of thestartSimulationandstartNavigationmethods from theNavigationServiceclass - the
onNavigationInstructionUpdatepositional callback parameter was removed from the parameters of thestartSimulationandstartNavigationmethods from theNavigationServiceclass as it was deprecated - the
autoPlaySoundparameter was removed from the parameters of thestartSimulationandstartNavigationmethods from theNavigationServiceclass as it was deprecated. Use theSoundPlayingServiceclass to toggle playing TTS instructions at any time instead - the
indexparameter of thegetCountryFlagImgByIndexmethod from theMapDetailsclass is now positional instead on named - the
RectType<T>was replaced withRectangleeverywhere in the public API: the parameter of thecenterOnRoute,getOptimalRoutesCenterViewport,getOptimalHighlightCenterViewport,transformScreenToWgsRect,centerOnRoutePart,checkObjectVisibility,centerOnAreaRect,centerOnRoutes,centerOnMapRoutes,setClippingArea,getVisibleRouteIntervalmethods from theGemViewandGemMapControllerclasses, the return type ofgetOptimalRoutesCenterViewportandgetOptimalHighlightCenterViewportmethods from theGemViewandGemMapControllerclasses, the return type of theviewportFandviewportgetters from theGemViewclass, the return type of thegetScreenRectmethod from theMapSceneObjectclass, the type of thefocusViewportproperty from theMapViewPreferencesclass, the type of themapScalePositionproperty from theMapViewPreferencesclass, - the default value of the
providerparameter of theproducePositionmethod from theSenseDataFactoryclass changed fromProvider.unknowntoProvider.gps - the
angleparameter of thesetMapRotationModemethod from theFollowPositionPreferencesclass has been removed as it was deprecated. Use themapAngleparameter instead ContentStoreItemStatusenum numeric values
Fixed
- the
producePositionmethod from theSenseDataFactoryclass now produces positions usable in the engine with minimal configuration, as the provider is nowgpsinstead ofunknown - the
visibilityproperty from theMapSceneObjectclass now works as expected - the
startRecordingmethod of theRecorderclass now works even if one of the passed data types is not supported, the recording now records the supported data tyoes - the last instruction from the list of
RouteInstructionobjects returned from theinstructionsgetter of theRouteSegmentBaseclass has a correctturnInstructionstring - when the
touchHandlerModifyPersistentproperty is set to true, the calls ofstartFollowPositionmethod use the correct zoom level and no longer zoom in - the
currentPositionof theNavigationInstructionclass now returns the correct value - the logging no longer logs the token and
logmethod calls - app no longer crashes when trying to call a method that is not existent on native classes, an exception with a suitable message is raised instead
- properties which return
ContentStoreItemStatusvalues now provide the correct values.
[2.26.0] - 2025-09-04
Added
ProxyType,SdkEventenumsMapDisposedException,ProxyDetails,MarkerSketchesclassesregisterOnConnectionFailed,registerOnConnectFinished,registerOnMobileCountryCodeChangedmethods to theNetworkProviderclass. They only work on Android for now.segment,partIndex,distance,type,markerCollection,coordinates,markerIndexproperties to theMarkerMatchclassgetTypemethod to theISOCodeConversionsclassgetSketchesmethod to theMapViewMarkerCollectionsclassgetIsFollowingPositionmethod to theGemMapControllerandGemViewclassesisActive,isExpired,isAntiArea,areaproperties to theTrafficEventclassisRightToLeftproperty to theLanguageclasselevationAlphaFactorproperty to theMapViewPreferencesclassgetDataSource,updateNavigationSoundmethods to theNavigationServiceclassexportAs,getRoadInfoImgmethods to theNavigationInstructionclasscurrentPosition,nextNextInstruction,returnToRoutePosition,returnToRouteImage,nextInstruction,navigationRoute,previousInstructionproperties to theNavigationInstructionclassmetricsgetter to theRecorderclassallowReroutingEventconst static field to theDSPrefKeysPositionclassallowReroutingEventproperty to thePositionSensorConfigurationclassExpiredContentclassregisterOnExpiredContentmethod to theOffBoardListenerclass
Removed
ActivityType,TrafficTransportMode,ActivityConfidenceenums as some were related toActivityandTrafficTransportModewas not usedActivityclass as it was unstable and not fully suportedimagePointer,packedLabelingMode,imagePointerSizeproperties from theMarkerRenderSettingsclass are now internalproduceActivitymethod from theSenseDataFactoryclass as theActivitywas removedcreatemethod from theTimezoneResultclass is now internal as the instances should be obtained only via conversion operationsscrollmethod from theGemMapControllerandGemViewclasses as it was not working
Changed
calculateRoutemethod from theRoutingServicenow considers passedRoutePreferences.truckProfiledimensions and weights even when transportMode iscargetPlaybackmethod from thePositionServicereplaced withplaybackgetter- added
freevalue to theTrafficEventSeverityenum - added
waitingReturnToRoutevalue to theNavigationStatusenum - added
textureViewvalue to theAndroidViewModeenum - added
groupTopRightvalue to theMarkerLabelingModeenum - added
packedGeometryandpolylinevalues to thePathFileFormatenum - removed
activityvalue to theDataTypeenum - return type of the
getCountryDatamethod from theMapDetailsclass changed fromCountryDatatoCountryData? - removed redundant
typeparameter from thesetMockDatamethod from theDataSourceclass - the
areaparameter of thehitTestmethod from theMapViewMarkerCollectionshas been removed. The newcoordinatesparameter is now used instead - added
lmkStoreTypesIdsandradiusnamed parameters with default values of thegetNearestLocationsmethod from theGemMapController,GemMapControllerandGemViewclasses - return type of the
getBestLanguageMatchmethod from theSdkSettingsclass changed fromLanguagetoLanguage? - replaced the type of the
variantparameter of thegetBestLanguageMatchmethod from theSdkSettingsfrominttoScriptVariant. TheregionCode,scriptCodeandvariantparameters are now named and have suitable default values.
Fixed
getBestLanguageMatchmethod from theSdkSettingsclass changed has been fixedgetPersistentRoadblockmethod from theTrafficServiceclass now also works for path areasstartFollowPositionwithout parameters had incorrect behaviour whensetTouchHandlerModifyPersistentis true and a previousstartFollowPositioncall with parameters had been issued.- calling methods from classes such as
MapViewPreferences,MapViewRoutesCollection,MapViewPathCollection,LandmarkStoreCollection,MapViewMarkerCollections,FollowPositionPreferencesandMapViewExtensionsobjects now throw exception when the associatedGemMapControllerhas been destroyed. Previously the app crashed. - the
asyncDownloadmethod of theContentStoreItemclass and theasyncGetStoreFilteredList,asyncGetStoreContentListmethods from theContentStoreclass now provide the correct result in case of failure via theonCompletecallback method
[2.25.0] - 2025-08-14
Added
MapDownloaderService,CountryDataclassesstopTrackPositions,startTrackPositionsmethods andisTrackedPositions,trackedPositionsproperties to theMapViewExtensionsclassmapLabelsFading,mapLabelsContinuousRendering,disableFastLoading,isFastBrowsingEnabledproperties to theMapViewPreferencesclassgetPointMapCoverage,getCountryDatamethods andallCountriesDataproperty to theMapDetailsclassplaybackgetter to thePositionServiceclassgetScreenRectmethods to theMapSceneObjectclassimport_custom_landmarksexample for showing how to import and use landmarks.
Removed
createmethod from theAddressInfoclass. The public constructor should be used instead.
Changed
- the type of the
coordinatesproperty from theProjectionclass changed fromCoordinates?toCoordinates - added optional
languageparameter to thesetVoiceByPathmethod from theSdkSettingsclass.
Fixed
- the
overlayInfosgetter of theOverlayCollectionclass now returns usable list ofOverlayInfoobjects. Previously the app crashed when accessing members of these returnedOverlayInfo. - a computer voice matching with the default SDK language is now set by default. Previously the language needed to be set manually.
- the
getDepartureTimeandgetArrivalTimemethods of thePTRouteInstructionclass now return correct values. - the
asyncGetStoreFilteredListmethod of theContentStoreclass now returns correct values when the providedcountriesparameter is null. - the
cancelNavigationmethod of theNavigationServiceclass no longer crashes randomly when called. - the
setSdkDumpLevelmethod from theDebugclass now works on Android.
[2.24.0] - 2025-07-31
Added
GemCameraPlayer,GemCameraPlayerController,GemCameraPlayerValue,CameraConfiguration,CameraclasseslabelIconsparameter to theaddmethod inMapViewRouteCollectionclassImagePixelFormat,GemCameraPlayerStatus,SdkCapabilityenumscapabilittiesgetter inSdkSettingsclassmapAngleproperties to theMapViewPreferencesclassproduceCameramethod inSenseDataFactorygetTimezoneInfoFromCoordinatesSyncandgetTimezoneInfoTimezoneIdSyncmethods inTimezoneclassisRenderEnabledgetter and setter inMapViewazimuthandresetmethods inCoordinatesclassreset,convertmethods andisDefaultgetter in allGeographicAreaclassessetFromBoundsandsetFromCenterAndRadiimethods inRectangleGeographicAreaclassimgsetter inLandmarkCategoryferryandtollvalues inGemIconenumlabelIconsoptional parameter toaddmethod ofMapViewRoutesCollectionCamera feedexample for showing how to useGemCameraPlayerto retrieve the live camera feed image
Removed
accurateResultparameter ingetTimezoneInfoFromCoordinatesandgetTimezoneInfoFromTimezoneIdmethodsRenderRuleenumsrender,markNeedsRendermethods from theGemViewclassrenderingRuleproperties from theGemViewclassrender,markNeedsRendermethods from theGemMapControllerclass
Changed
onCompleteCallBackhas been deprecated in all classes. This parameter was replaced withonCompletein all classes.DataTypeExtensionid valuesheadingInDegreesmethod ofMapViewhas been deprecated. This method was replaced withmapAngleinMapView.pitchInDegreesmethod ofMapViewhas been deprecated. This method was replaced withviewAngleinMapView.angleparameter ofsetMapRotationModehas been deprecated. This parameter was replaced withmapAngleinsetMapRotationModemethod inFollowPositionPreferencesclassrotationAnglegetter fromFollowPositionPreferenceshas been deprecated. This method was replaced withmapAngleinFollowPositionPreferencesclassrotationAnglesetter fromMapViewPreferenceshas been deprecated. This method was replaced withmapAngleinMapViewPreferencesclassisEmptygetter fromGeographicAreaclasses has been deprecated. This method was replaced withisDefaultin allGeographicAreaclasses- return type of the
getWaypointsmethod from theRouteBookmarksclass changed fromList<Landmark>toList<Landmark>? - return type of the
getNamemethod from theRouteBookmarksclass changed fromStringtoString? - return type of the
getTimestampmethod from theRouteBookmarksclass changed fromDateTimetoDateTime?
[2.23.0] - 2025-07-17
Added
AlertSeverity,ISOCodeType,GemDumpSdkLevelenumsTextMark,ISOCodeConversionsclassesremoveListener,addTextMark,addListenermethods to theRecorderclassgetLandmarkStoreTypemethod to theLandmarkStoreServiceclassoverlaysLandmarkStoreId,geofenceLandmarkStoreId,mapRoadsLandmarkStoreIdgetters to theLandmarkStoreServiceclassgetIntermediateWaypointDropParametersmethod to theNavigationServiceclasstextMarksgetter to theLogMetadataclassgetLandmarkmethod to theLandmarkStoreclasssetSdkDumpLevel,logmethods to theDebugclassgetStoreFilteredList,asyncGetStoreFilteredListmethods to theContentStoreclass
Removed
setTouchHandlerModifyVerticalAngleLimitsmethods from theFollowPositionPreferencesclass- most classes based on the
GemListare now only for internal use and are no longer exposed in the public API:GemList,GenericIterator,LandmarkList,LandmarkPositionList,OverlayItemList,RouteList,RouteInstructionList,RouteSegmentList,OverlayItemPositionList,MarkerMatchList,MarkerList,TrafficEventList,RouteTrafficEventList,LandmarkCategoryList,ContentStoreItemList,SignpostItemList.
Changed
- added
hiketo theRecordingTransportModeenum; - removed
nonefrom theOnlineRestrictionsenum; - the type of the
fromLandmarkproperty from theRouteTrafficEventclass changed fromPair<Landmark, bool>to(Landmark, bool) - the type of the
toLandmarkproperty from theRouteTrafficEventclass changed fromPair<Landmark, bool>to(Landmark, bool) - return type of the
getOngoingAnalysismethod from theDriverBehaviourclass changed fromDriverBehaviourAnalysistoDriverBehaviourAnalysis? - return type of the
getInstantaneousScoresmethod from theDriverBehaviourclass changed fromDrivingScorestoDrivingScores? - return type of the
getLastAnalysismethod from theDriverBehaviourclass changed fromDriverBehaviourAnalysistoDriverBehaviourAnalysis? - return type of the
stopAnalysismethod from theDriverBehaviourclass changed fromDriverBehaviourAnalysistoDriverBehaviourAnalysis? - return type of the
getCombinedAnalysismethod from theDriverBehaviourclass changed fromDriverBehaviourAnalysistoDriverBehaviourAnalysis? - added
severitynamed parameter to theplayTextmethod from theSoundPlayingServiceclass - return type of the
toPTRouteInstructionmethod from theRouteInstructionclass changed fromPTRouteInstructiontoPTRouteInstruction? - return type of the
getNavigationInstructionmethod from theNavigationServiceclass changed fromNavigationInstructiontoNavigationInstruction? - added
onTurnAroundoptional parameter to thestartNavigationandstartSimulationmethods from theNavigationServiceclass - return type of the
getAvailableOverlaysmethod from theOverlayServiceclass changed fromPair<OverlayCollection, bool>to(OverlayCollection, bool) - return type of the
getVisibleRouteIntervalmethod from theGemViewclass changed fromPair<int, int>to(int, int) - return type of the
getElevationSamplesmethod from theRouteTerrainProfileclass changed fromPair<List<double>, double>to(List<double>, double) - return type of the
getElevationSamplesByCountmethod from theRouteTerrainProfileclass changed fromPair<List<double>, double>to(List<double>, double) - return type of the
getVisibleRouteIntervalmethod from theGemMapControllerclass changed fromPair<int, int>to(int, int) - return type of the
toPTRouteSegmentmethod from theRouteSegmentclass changed fromPTRouteSegmenttoPTRouteSegment? - the type of the
drivingScoresproperty from theDriverBehaviourAnalysisclass changed fromDrivingScorestoDrivingScores? - return type of the
getUserMetadatamethod from theLogMetadataclass changed fromUint8ListtoUint8List? - return type of the
getBuyTicketInformationmethod from thePTRouteclass changed fromPTBuyTicketInformationtoPTBuyTicketInformation? - the parameters of the
getLandmarkCountmethod from theLandmarkStoreclass changed (added: int categoryId = LandmarkStore.invalidLandmarkCategId, removed: int categoryId) - return type of the
getOnlineServiceRestrictionmethod from theSdkSettingsclass changed fromOnlineRestrictionstoSet<OnlineRestrictions> - return type of the
addPersistentRoadblockByCoordinatesmethod from theTrafficServiceclass changed fromPair<TrafficEvent?, GemError>to(TrafficEvent?, GemError) - return type of the
addAntiPersistentRoadblockByAreamethod from theTrafficServiceclass changed fromPair<TrafficEvent?, GemError>to(TrafficEvent?, GemError) - return type of the
addPersistentRoadblockByAreamethod from theTrafficServiceclass changed fromPair<TrafficEvent?, GemError>to(TrafficEvent?, GemError) - return type of the
getUrlTranslationmethod from thePTAlertclass changed fromPTTranslationtoPTTranslation? - return type of the
getDescriptionTextTranslationmethod from thePTAlertclass changed fromPTTranslationtoPTTranslation? - return type of the
getHeaderTextTranslationmethod from thePTAlertclass changed fromPTTranslationtoPTTranslation? - return type of the
generatePositionAndOrientationTargetCenteredmethod from theMapCameraclass changed fromPair<GemError, PositionOrientation>to(GemError, PositionOrientation) - return type of the
generatePositionAndOrientationHPRmethod from theMapCameraclass changed fromPair<GemError, PositionOrientation>to(GemError, PositionOrientation) - return type of the
generatePositionAndOrientationRelativeToCenteredTargetmethod from theMapCameraclass changed fromPair<GemError, PositionOrientation>to(GemError, PositionOrientation) - return type of the
generatePositionAndOrientationmethod from theMapCameraclass changed fromPair<GemError, PositionOrientation>to(GemError, PositionOrientation) - return type of the
generatePositionAndOrientationRelativeToTargetmethod from theMapCameraclass changed fromPair<GemError, PositionOrientation>to(GemError, PositionOrientation) - the type of the
touchHandlerModifyVerticalAngleLimitsproperty from theFollowPositionPreferencesclass changed fromPair<double, double>to(double, double) - the
touchHandlerModifyVerticalAngleLimitsproperty from theFollowPositionPreferencesclass changed from getter to getter/setter pair - the type of the
touchHandlerModifyHorizontalAngleLimitsproperty from theFollowPositionPreferencesclass changed fromPair<double, double>to(double, double) - the type of the
touchHandlerModifyDistanceLimitsproperty from theFollowPositionPreferencesclass changed fromPair<double, double>to(double, double) - the type of the
mapRotationModeproperty from theFollowPositionPreferencesclass changed fromPair<FollowPositionMapRotationMode, double>to(FollowPositionMapRotationMode, double) - the type of the
trackproperty from theOTRouteclass changed fromPathtoPath? - return type of the
getPreferencesmethod from theRouteBookmarksclass changed fromRoutePreferencestoRoutePreferences? - the type of the
nextTurnDetailsproperty from theNavigationInstructionclass changed fromTurnDetailstoTurnDetails? - the type of the
signpostDetailsproperty from theNavigationInstructionclass changed fromSignpostDetailstoSignpostDetails? - the type of the
nextNextTurnDetailsproperty from theNavigationInstructionclass changed fromTurnDetailstoTurnDetails? - return type of the
getRouteConnectionsmethod from theDebugclass changed fromMarkerCollectiontoMarkerCollection? - return type of the
createContentUpdatermethod from theContentStoreclass changed fromPair<ContentUpdater, GemError>to(ContentUpdater, GemError) - return type of the
getStoreContentListmethod from theContentStoreclass changed fromPair<List<ContentStoreItem>, bool>to(List<ContentStoreItem>, bool) - return type of the
getSunriseAndSunsetmethod from theMapDetailsclass changed fromPair<DateTime, DateTime>to(DateTime, DateTime) - return type of the
getAlertmethod from thePTRouteSegmentclass changed fromPTAlerttoPTAlert?
Fixed
- the
safetyvalue of theCommonOverlayIdenum now works when used within methods - the
hasTerrainTopographymethod of theGemMapControllernow returns correct value - the
hasTerrainTopographymethod of theGemMapControllernow returns correct value - the
driveSidegetter of theNavigationInstructionclass now matches the correct street and returns the correct value - the
getLandmarksInAreaof theLandmarkStorenow works correctly when no area is provided. - the
canPlaySoundsproperty of theSoundPlayingServiceclass only affects TTS instructions triggered by the navigation service.
[2.22.0] - 2025-07-03
Added
ProjectionType,SoundPlayType,HemisphereenumsMGRSProjection,BNGProjection,Projection,WProjection,GKProjection,LAMProjection,UTMProjection,ProjectionService,SoundPlayingListenerclassessoundPlayingListenerproperty to theSoundPlayingServiceclasssearchCountriesmethod to theGuidedAddressSearchServiceclass
Changed
- Added
scenicvalue to theRouteTypeenum - return type of the
getTopicNotificationsServiceRestrictionmethod from theSdkSettingsclass changed fromOnlineRestrictionstoSet<OnlineRestrictions> - the
taskHandlerparameter of thecancelNavigationmethod from theNavigationServiceclass is optional. The default value isnulland cancels the currently active navigation. - the
ignoreAltitudenamed parameter has been added to thedistancemethod from theCoordinatesclass. The parameter defaults tofalsein order to preserve current behavior. - return type of the
getLogMetadatamethod from theRecorderBookmarksclass changed fromLogMetadatatoLogMetadata?
Fixed
- the
releasemethod of theGemKitclass clears resources and resets state of the singleton instances of the SDK. Changes made on previous sessions no longer affect the current session. - the
getByKeymethod of theExtraInfoclass returns null instead of raising an exception on non-existing key - the
addUserMetadatamethod of theLogMetadataclass works with larger payloads - the
containsCoordinatesmethod of theCircleGeographicAreaworks as expected when coordinates contain altitude. - the
setMockDatamethod of theDataSourceclass returnsGemError.notSupportedwhen thesenseDataandtypeparameters do not match.
[2.21.0] - 2025-06-05
Added
- the
LandmarkOrderenum - the
SettingsServiceclass - the
LandmarkBrowseSessionclass - the
createLandmarkBrowseSessionmethod to theLandmarkBrowseSessionclass - the
warningsVolume,audioOutputandcallTimingDelaysetters and getters to theSoundPlayingService, - the
getAndroidVersionstatic method of theDebugclass - the
SocialReportListenerclass. - the
registerReportListenerandunregisterReportListenermethods to theSocialOverlayclass.
Removed
- the
automaticTimestampfield of theRoutePreferencesclass has been removed.
Changed
- the
disposemethod of theLandmarkStoreclass is now synchronous - the type of the
publicTransportFaregetter of thePTRouteclass changed fromStringtoString? - the type of the
stopPlatformCodefield of thePTTripclass changed fromStringtoString? - the type of the
autoPlaySoundparameter of thestartNavigationmethod of theNavigationServiceclass has been changed frombooltobool?. The parameter has been deprecated - the
importLandmarksandimportLandmarksWithDataBuffermethods of theLandmarkStoreclass can take an additionalonProgressUpdatedcallback optional parameter. thecategoryIdis no longer required and has a suitable default value. - methods in the
SocialOverlayclass now provide anonCompletecallback which gives theGemErrorresult. These methods now returnEventHandler?instead ofGemErrorandGemError.scheduled(in case of operation started with success) was removed in favor of providingGemError.successvia the callback when the operation completed. - the
reportmethod ofSocialOverlaynow uses named parameters;snapshot,format, andparamsare optional, anddescriptionhas a default value.
Fixed
- the
cameraStatesetter of theMapCameranow sets the correct value - the
PTAlgorithmTypeenum set withinRoutingSettingsnow has the correct effect on the calculated routes. - the
addListmethod of theMapViewMarkerCollectionsclass now works - the
renderingRuleno longer flickers the map on Android - the
setAllowConnectionandsetAllowInternetConnectionmethods now allow internet connection whenallowInternetConnectionis set to true and the previous value was set to false. - the
getCountryFlagImgByIndexmethod of theMapDetailsclass correctly returnsnullwhen the index is invalid. - the
importLandmarksWithDataBuffermethod no longer crashes on release builds - the members of the
SoundPlayingServicenow work without crashes or exceptions
[2.20.0] - 2025-05-22
Added
RenderRule,LandmarkFileFormat,MapStatusenumsTrafficService,TrafficPreferences,UserRoadblockPathPreviewCoordinate,PathMatch,PersistentRoadblockListener,ExternalInfoServiceclassesisConnected,isMobileDataConnected,isWifiConnectedmethods to theNetworkProviderclassenableSocialReportsWithCategory,disableSocialReports,enableSafetyCamera,unmonitorAllAreas,enableSocialReports,isSocialReportsEnabledWithCategory,disableSafetyCamera,disableSocialReportsWithCategory,unmonitorAreasByIdsmethods to theAlarmServiceclassmonitoredAreas,isSocialReportsEnabled,isSafetyCameraEnabledgetters to theAlarmServiceclassrender,markNeedsRender,cursorSelectionTrafficEventsmethods to theGemViewandGemMapControllerclassesrenderingRulegetter/setter to theGemViewclasscancelGetPreviewData,getPreviewDatamethods to theTrafficEventclassgetElevationSamplesByCount,getTotalUp,getTotalDownmethods to theRouteTerrainProfileclassgetCategoriesFromLandmark,importLandmarksWithDataBuffer,setImage,getLandmarkCount,stopFastUpdateMode,getLandmarksInArea,startFastUpdateMode,setLandmarkCategory,isFastUpdateMode,cancelImportLandmarks,importLandmarks,getFilePathmethods to theLandmarkStoreclassimageproperty to theLandmarkStoreclasscancelGetPreviewData,getPreviewDatamethods to theRouteTrafficEventclassrequestWikiImageInfo,cancelWikiImageInfoRequestmethods to theExternalInfoclasshitTestmethods to theMapViewPathCollectionclass
Removed
crossedBoundariesproperties from theAlarmServiceclass as theAlarmListenerhas been improved and provides the list of entered and exited areashasWikiInfo,cancelWikiInfo,getExternalInfomethods from theExternalInfoclass. These methods were moved to theExternalInfoServiceclass as the API was confusing.
Changed
NetworkProviderno loger implementsEventHandler- the
Statusenum has been renamed toMapStatus. The change has affected theregisterOnWorldwideRoadMapSupportStatusandregisterOnAvailableContentUpdatemethods of theOffBoardListenerclass and thesetAllowConnectionof theSdkSettingsclass - return type of the
getMarkerAtmethod from theMarkerCollectionclass changed fromMarkertoMarker? - return type of the
getMarkerByIdmethod from theMarkerCollectionclass changed fromMarkertoMarker? - return type of the
getPointsGroupHeadmethod from theMarkerCollectionclass changed fromMarkertoMarker? - the parameters of the
monitorAreamethod from theAlarmServiceclass changed, addedString idoptional parameter - the parameters of the
registerOnBoundaryCrossedmethod from theAlarmListenerclass changed and now requires avoid Function(List<String> enteredAreas, List<String> exitedAreas)callback. - the type of the
labelGroupTextSizeproperty from theMarkerCollectionRenderSettingsclass changed frominttodouble - return type of the
getCoordinatesmethod from theEntranceLocationsclass changed fromCoordinatestoCoordinates? - the type of the
affectedTransportModesproperty from theTrafficEventclass changed fromSet<TrafficTransportMode>toRouteTransportMode - the
addListmethod from theMapViewMarkerCollectionsclass is now async and needs to be awaited - return type of the
getPathAtmethod from theMapViewPathCollectionclass changed fromPathtoPath? - return type of the
getPathByNamemethod from theMapViewPathCollectionclass changed fromPathtoPath? requestLocationPermissiongetter of thePositionServiceclass is now method.- deprecated the
getWikiPageUrl,getWikiPageLanguage,getWikiPageTitle,getWikiPageDescription,getImagesCountof theExternalInfoclass. These methods were replaced with thewikiPageUrl,wikiPageLanguage,wikiPageTitle,wikiPageDescription,imagesCountgetters.
Fixed
- the
getPathAtandgetPathByNamemethods of theMapViewPathCollectionclass no longer freeze the app when called with invalid input - the
Orientationobjects provided by the SDK now come with correct values - the
addListmethod of theMapViewMarkerCollectionsclass no longer crashes on 32-bit Android systems - the
harshBrakingScoremethod of theDrivingScoresclass no longer crashes and returns the correct value - the
CircleGeographicAreasandPolygonGeographicAreaobjects provided by the SDK are now correctly deserialized - the
insideAreasandoutsideAreasgetters of theAlarmServiceclass no longer crash the app and return the correct values - the
getForecastmethod of theWeatherServiceclass now returnsLocationForecastobjects with correctupdatedfields. The method now returnsGemError.invalidInputif the given coordinates are invalid - the
TransferStatisticsclass now returns correct value on extra charged networks
[2.19.0] - 2025-05-08
Added
TimeZoneStatus,VoiceType,HardwareSpecificationenumsNmeaChunk,TimezoneService,SoundPlayingService,LogMetrics,Voice,PTRouteInfo,TimezoneResult,WeatherDurationCoordinatesclasseshardwareSpecificationsgetter/setter pair to theRecorderConfigurationclassproduceNmeaChunkmethod to theSenseDataFactoryclassgetVoice,setVoiceByPathmethods to theSdkSettingsclassgetOptimalHighlightCenterViewport,cursorSelectionMapSceneObject,centerOnRouteTrafficEvent,cursorSelectionPath,getAltitude,transformScreenToWgsRect,getVisibleRouteInterval,checkObjectVisibility,canZoom,getHighlight,getOptimalRoutesCenterViewport,setClippingAreamethods andhasTerrainTopography,isAnimationInProgress,pitchInDegrees,minZoomLevel,cursorWgsPosition,headingInDegrees,viewportF,isCameraMovingto theGemViewand extendingGemMapControllerclasslogMetricsgetter to theLogMetadataclassmapRotationModegetter to theFollowPositionPreferencesclasscamerasetter to theGemViewclassmaxZoomLevelsetter to theGemViewclass
Removed
osInfoproperties from theSdkSettingsclass as it was not valuable and the Flutter SDK provides better built-in alternativesdeviceModelgetter/setter pair from theRecorderConfigurationclass has been deprecated. The same functionality is now achieved via the settings set in thehardwareSpecificationsgetter/setter.ExternalPositionDataclass and thepositionFromExternalDatamethod from theSenseDataFactoryclass have been deprecated. The same functionality can now be achieved using theproducePositionmethod from theSenseDataFactoryclass.setNorthFixedFlagmethod from theMapViewPreferenceshas been deprecated and replaced with thenorthFixedFlagsettersetTTSLanguagemethod from theSdkSettingsclass has been deprecated and replaced with thesetTTSVoiceByLanguagemethodrefreshContentStoremethod from theContentStoreclass has been deprecated and replaced with therefreshmethodsetActivityRecordmethod from theRecorderclass has been deprecated and replaced with theactivityRecordgetter
Changed
- the map file structure has been changed. The SDK version must be updated to at least the current version in order to continue receiving map updates in the future. Map support for older SDK versions is still available for 2 years.
- updated the
pubspec.yamlrequirements: the minimum Flutter version required is 3.27.0 and the minimum Dart version required is 3.6.0 - added
nmeaChunkvalue toDataTypeenum - added
drvalue toFileTypeenum - changed the
coordsparameter type of thegetForecastmethod from theWeatherServicefromList<TimeDistanceCoordinate>toList<WeatherDurationCoordinates> - the type of the
overlayInfoproperty from theOverlayItemclass changed fromOverlayInfotoOverlayInfo? - added optional
restoreCameraModeparameter to thestopFollowingPositionmethod from theGemViewandGemMapControllerclasses - the type of the
imageproperty from theOverlayInfoclass changed fromUint8ListtoUint8List? - the type of the
imageproperty from theOverlayCategoryclass changed fromUint8ListtoUint8List? - return type of the
getElevationSamplesmethod from theRouteTerrainProfileclass changed fromPair<List, double>toPair<List<double>, double> - added optional
autoPlaySoundparameter to thestartSimulationandstartNavigationmethods from theNavigationService isStoppedmethod from theDataSourceclass has been replaced with getterPtRouteclass from thept_stop_info.dartfile has been renamed toPtRouteInfo. A class with thePtRoutename already exists in theroute.dartfileregisterCursorSelectionMapSceneObjectCallbackmethod from theGemMapControllerclass has been renamed toregisterCursorSelectionUpdatedMapSceneObjectCallback
Fixed
getLatestDatamethod from thePlaybackclass now returns correct dataoverlayInfosgetter from theOverlayCollectionclass no longer throws exception and returns correct items.
[2.18.0] - 2025-04-24
Added
PTAgency,PTRoute,PTStop,PTStopTime,PTTrip,PTStopInfoclassesPTRouteTypeenumMappedDrivingEvent,DrivingScores,DriverBehaviourAnalysis,DriverBehaviourclassesDrivingEventenumTransferStatisticsclassViewOnlineServiceTypeenumTransferStatisticsgetter method inContentStore,MapView,GuidedAddressSearchService,NavigationService,RoutingService,SdkSettings,SearchService,SocialOverlay,WeatherclassessetAllowConnectionandautoUpdatemethods inSdkSettingsclassonAutoUpdateCompletecallback inSdkSettingsclassallowInternetConnectionflag inGemMapconstructorasJsonmethod inGemParameterandGemParameterListclassescursorSelectionOverlayItemsByTypemethod inMapViewclassisOfTypeandgetPTStopInfomethods inOverlayItemclass
Removed
RoadInfoImageRenderSettingsclass
Changed
- the
addUserMetadatamethod from theLogMetadatais now async and should be awaited OffBoardListenerhandleTouchEventis now async
[2.17.0] - 2025-04-10
Added
RoutingAlgoModifiers,ImageTypeenumsMountInfo,LaneImg,AbstractGeometryImg,SignpostImg,RoadInfoImg,RenderableImg,Img,ImgBaseclasseslaneImg,nextNextTurnImg,nextTurnImgproperties to theNavigationInstructionclassimgproperty to theOverlayItemclassimgproperty to theConditionsclassimgproperty to theTrafficEventclassimgPreviewproperty to theContentStoreItemclassgetImgByIdmethod to theSdkSettingsclassgetCountryFlagImg,getCountryFlagImgByIndexmethods to theMapDetailsclassabstractGeometryImgproperty to theTurnDetailsclassimgproperty to theOverlayCategoryclassextraImg,overlayItem,imgproperties to theLandmarkclassimgproperty to theLandmarkCategoryclassroadInfoImg,realisticNextTurnImg,turnImgproperties to theRouteInstructionBaseclassimgproperty to theOverlayInfoclassimageproperty to theSignpostDetailsclassgetDefUrls,isRawPositionTrackerEnabled,getRoutingAlgoModifiers,getAppIOInfo,oneToOnePedestrianCalculation,setRoutingAlgoModifiers,getNavigationModifiers,timeToCheckTrafficAlongRoutesSec,getRouteConnections,getMapViewMaxZoomRanges,getTotalMemory,getMaxUsedMemory,refreshContentStore,setCustomUrl,getServiceName,updateMaps,getStyleBuilderUrls,isMainThread,cleanupSocialCache,getAllWeatherConditions,replayStreamActivityLog,getUsedMemory,getFreeMemory,timeToBetterRouteSec,manyToManyPedestrianCalculation,getServicesIdsmethods to theDebugclasscalculate_bike_route,center_area,center_traffic,gpx_routing_thumbnail_image,gpx_thumbnail_image,map_style_update,route_alarms,send_debug_info,simulate_navigation_without_map,speed_tts_warning,what_is_nearby_categoryexamples
Removed
networkProviderproperty from theSdkSettingsclass as it was not workingsearchReportsAlongRoute,searchReportsAroundmethods from theSocialOverlayclass as searching for reports can now be done via theSearchService- the
imagesetter from theConditionsclass. - the
imagesetter from theOverlayCategoryclass.
Changed
- the
pauseDownloadmethod from theContentStoreItemnow takes an optionalonCompleteparameter - the
clearmethod from theMapViewMarkerCollectionsis now async and should be awaited
[2.16.0] - 2025-03-27
Added
AutoUpdateSettingsclasshandleTouchEventmethod to theGemMapControllerandGemViewclasses
Removed
DataBufferclass as it was not fully implemented and all operations are exposed in the Dart SDK using the predefinedUint8ListtypeupdateCurrentStyleFromJsonmethod from theMapViewPreferencesclass as it depended on the non-functionalDataBufferclasssave,loadmethods from theMapViewMarkerCollectionsclass as they depended on the non-functionalDataBufferclass
Changed
- return type of the
createLogDataSource,createLiveDataSource,createExternalDataSourceandcreateSimulationDataSourcemethods from theDataSourceclass changed fromDataSourcetoDataSource? - renamed the
allowparameter toallowInternetConnectionandcanDoAutoUpdatetocanDoAutoUpdateResourcesin thesetAllowConnectionmethod from theSdkSettingsclass. - the
initializemethod from theGemKitclass takes an additional optional parameterautoUpdateSettingsof typeAutoUpdateSettings - return type of the
hitTestmethod from theMapViewMarkerCollectionsclass changed fromMarkerMatchListtoList<MarkerMatch>
Fixed
- the
alarmListenersetter from theAlarmServiceclass now correctly sets the listener - the
pictogramTypegetter from theSignpostItemclass now returns the correct value Weatherrelated methods on olderiOSdevices- issue when navigating with multiple waypoints
[2.15.0] - 2025-03-13
Added
FileSortType,AppTheme,NextSpeedLimitStatus,FileSortOrder,OnlineRestrictions,LogUploaderStateenumsLogUploaderclassgetOnlineServiceRestriction,getBestLanguageMatch,getTopicNotificationsServiceRestriction,setSdkVersionmethods to theSdkSettingsclassactualAppTheme,sdkVersion,appTheme,deviceModel,deviceName,digitGroupSeparator,applicationName,decimalSeparatorproperties to theSdkSettingsclasshasSignpostInfogetter to theNavigationInstructionclassdeleteLog,markLogUploaded,getLogDurationInSeconds,markLogProtectedmethods to theRecorderBookmarksclassprotectedLogsListgetter to theRecorderBookmarksclassstatusproperties to theNextSpeedLimitclassrequestLocationPermissionproperties to thePositionServiceclass
Removed
setVoiceByPathmethod from theSdkSettingsclass as they are not fully supported by the Flutter SDK.smallModefield of theSignpostImageRenderSettingsas this feature is not fully implemented.
Changed
- renamed
EPlayingStatusenum toPlayingStatus,UnitOfMearsurementAccelerationenum toUnitOfMeasurementAcceleration MarkerLabelingModeenum values: fixed typo intextBellow(renamed totextBelow) and removed deprecatedgroupanditemvalues- fixed typo in the
SignpostPictogramTypeenum. Renamed thehoteMotelvalue tohotelMotel logsListgetter from theRecorderBookmarksreplaced with thegetLogsListmethod. It also provides sorting functionality.setTouchHandlerModifyHorizontalAngleLimits,setTouchHandlerModifyDistanceLimitsmethods from theFollowPositionPreferencesclass replaced withtouchHandlerModifyHorizontalAngleLimitsandtouchHandlerModifyDistanceLimitssetters.FileTypeenum changed values:csv,tcx,fitvalues;getState,getDuration,getCurrentPosition,getSpeedMultiplier,getMaxSpeedMultiplier,getLogPath,getRoute,getMinSpeedMultipliermethods from thePlaybackclass were replaced by thestate,duration,currentPosition,speedMultiplier,maxSpeedMultiplier,logPath,routeandminSpeedMultipliergetters- return type of the
updatemethod from theContentUpdaterclass changed fromGemErrortoProgressListener?. AddedonCompleteCallbacknamed optional parameter which provides the update result. - fixed typo in the
insideCityAeanamed parameter of thegetOverSpeedThresholdmethod from theAlarmServiceclass. Renamed toinsideCityArea - return type of the
stepmethod from thePlaybackclass changed fromGemErrortovoid - return type of the
getItemByIdmethod from theContentStoreclass changed fromContentStoreItemtoContentStoreItem? - return type of the
createContentUpdatermethod from theContentStoreclass changed fromContentUpdatertoPair<ContentUpdater, GemError> - the
recorderConfigurationsetter from theRecorderclass replaced with thesetRecorderConfigurationmethod. The method also provides the operation error code. - type of the
zoomparameter of thecreateLandmarkStoremethod of theLandmarkStoreServiceclass fromint?toint. A default value of-1has also been provided - type of the
overwriteparameter of theaddmethod of theRouteBookmarksclass frombool?tobool. A default value offalsehas also been provided - type of the
removeLmkContentparameter of theremoveCategorymethod of theLandmarkStoreclass frombool?tobool. A default value offalsehas also been provided - type of the
updateItemproperty from theContentStoreItemclass changed fromContentStoreItemtoContentStoreItem? - the
locationForecastsparameter of theonCompleteCallbackcallback within the parameters of thegetDailyForecast,getHourlyForecast,getCurrent,getForecastmethods from theWeatherServiceclass has changed type fromList<LocationForecast>?toList<LocationForecast>. The result list provided by the callback is now empty instead ofnullwhen the operation fails - the
RenderSettingsclass is now a generic template. Theoptionsproperty changed type fromSet<dynamic>toSet<T>. The type of theoptionsproperty from theRouteRenderSettingsclass changed fromSet<dynamic>toSet<RouteRenderOptions>. The type of theoptionsproperty from theHighlightRenderSettingsclass changed fromSet<dynamic>toSet<HighlightOptions>
Fixed
- the
activateHighlightmethod from theGemMapControllerclass (theinnerColorfield of theHighlightRenderSettingsclass was not taken into account, the operation did not work when norenderSettingsvalue was provided) - the
renderSettingsparameter from thegetLaneImagemethod provided by theNavigationInstructionclass is now taken into account - the
asyncGetStoreContentListmethod from theContentStoreclass now provides result via callback when the operation fails - the
referencePositiongetter from theAlarmServiceclass now returns correct value - the
stepmethod from thePlaybackclass now works correctly - the
enableDrawMarkersModemethod now works correctly
[2.14.1] - 2025-03-03
Fixed
- map rotation when in navigation mode
[2.14.0] - 2025-02-27
Added
TrafficEvent,PositionOrientation,AlarmMonitoredAreaclassesinsideAreas,referencePosition,outsideAreas,trackedPositionSourceproperties to theAlarmServiceclassTilesCollectionGeographicAreaclass implementsGeographicAreainterface and now provides theisEmpty,typegetterscontains,containsCategorymethods andoverlayInfosgetter to theOverlayCollectionclass and extending classOverlayMutableCollectionresetDefPositionTrackerAccuracyCircleColor,setDefPositionTrackerAccuracyCircleColor,getDefPositionTrackerAccuracyCircleColormethods to theMapSceneObjectclassimagePositionfield to theRenderSettingsclasssetCameraTargetCentered,setCameraRelativeToCenteredTarget,generatePositionAndOrientationHPR,setCameraRelativeToTarget,generatePositionAndOrientationRelativeToTarget,generatePositionAndOrientationTargetCentered,generatePositionAndOrientationRelativeToCenteredTarget,generatePositionAndOrientationmethods andcameraPosition,cameraOrientationproperties to theMapCameraclasstouchHandlerModifyDistanceLimits,touchHandlerModifyVerticalAngleLimits,touchHandlerModifyHorizontalAngleLimitsproperties to theFollowPositionPreferencesclassgetCountryFlagByIndexmethods to theMapDetailsclasscheckBetterRoutemethod andlogCreateObject,logListenerMethod,logCallObjectMethod,logLevelproperties to theDebugclassactivateHighlightOverlayItemsmethod to theGemViewandGemMapControllerclassesregisterCursorSelectionUpdatedPathCallback,registerHoveredMapLabelHighlightedLandmarkCallback,registerShoveCallback,registerPinchSwipeCallback,registerTouchHandlerModifyFollowPositionCallback,registerHoveredMapLabelHighlightedOverlayItemCallback,registerPinchCallback,registerTouchMoveCallback,registerSetMapStyleCallback,registerSwipeCallback,registerCursorSelectionUpdatedLandmarksCallback,registerTouchPinchCallback,registerCursorSelectionMapSceneObjectCallback,registerCursorSelectionUpdatedMarkersCallback,registerCursorSelectionUpdatedRoutesCallback,registerHoveredMapLabelHighlightedTrafficEventCallback,registerCursorSelectionUpdatedOverlayItemsCallback,registerDoubleTouchCallback,registerCursorSelectionUpdatedTrafficEventsCallback,registerTwoTouchesCallbackmethods to theGemMapControllerclass
Removed
- YELP related features (
getYelpPhoneNumber,getYelpRating,getYelpImagesCount,cancelYelpInfo,getYelpName,getYelpUrl,hasYelpInfo,getYelpImagePath,getYelpAddressmethods from theExternalInfoclass) isPrintSdkDebugInfoEnabledproperty from theDebugclass as it was replaced with more fine-tuned properties in theDebugclass.registerOnMapAngleUpdateCallback,registerOnMapViewMoveStateChangedCallback,registerPointerMoveCallback,registerPointerUpCallback,registerPointerDownCallback,registerOnLongPressCallbackmethods from theGemMapControllerclass. TheregisterOn...methods were deprecated in a previous release and are replaced with other methods. The methods related to pointer operations were removed as they were not working
Changed
getOverlayByIdmethod from theOverlayCollectionandOverlayMutableCollectionclasses renamed togetOverlayByUIdgetContourGeograficAreamethod from theLandmarkclass renamed togetContourGeographicAreaRouteTrafficEventclass now extendsTrafficEvent. Some methods were replaced with getters.onYelpDataAvailableparameter of thegetExternalInfomethod from theExternalInfoclass was removed- return type of the
customizeDefPositionTrackermethod from theMapSceneObjectclass changed frominttoGemError - return type of the
getFieldmethod from theAddressInfoclass changed fromStringtoString? - return type of the
getRenderSettingsmethod from theMapViewRoutesCollectionclass changed fromRouteRenderSettingstoRouteRenderSettings? - return type of the
getMapViewRoutemethod from theMapViewRoutesCollectionclass changed fromMapViewRoutetoMapViewRoute? - the type of the
mainRouteproperty from theMapViewRoutesCollectionclass changed fromRoutetoRoute? - the parameters of the
asyncUpdateToFromDatamethod from theRouteTrafficEventclass changed fromProgressListenerto callback method. - the type of the
toLandmarkproperty from theRouteTrafficEventclass changed frombooltoPair<Landmark, bool> - the parameter
moveCallbackof theregisterMoveCallbackmethod from theGemMapControllerclass changed fromTouchCallbackMovetoMoveCallback - the
zoomLevelparameter of thestartFollowingPositionmethod from theGemMapControllerclass changed fromint?toint. A value of-1is given by default - the
durationparameter of thesetZoomLevelmethod from theGemMapControllerclass changed fromint?toint. A value of0is given by default - the
durationparameter of thesetSlippyZoomLevelmethod from theGemMapControllerclass changed fromint?toint. A value of0is given by default - the
displayModeparameter of thecenterOnRoutesmethod from theGemMapControllerclass changed fromRouteDisplayMode?toRouteDisplayMode. A value ofRouteDisplayMode.fullis given by default. - the
zoomLevelparameter of thestartFollowingPositionmethod from theGemViewclass changed fromint?toint. A value of-1is given by default - the
durationparameter of thesetZoomLevelmethod from theGemViewclass changed fromint?toint. A value of0is given by default - the
durationparameter of thesetSlippyZoomLevelmethod from theGemViewclass changed fromint?toint. A value of0is given by default - the
displayModeparameters of thecenterOnRoutesmethod from theGemViewclass changed fromRouteDisplayMode?toRouteDisplayMode. A default value ofRouteDisplayMode.fullis given by default
Fixed
getNextAddressDetailLevelmethod of theGuidedAddressSearchServiceno longer crashed app on invalid inputgetFieldmethod of theAddressInfoclass- recording now works without requiring the existence of a map widget
textColorfield of aRouteRenderSettingsobject is now working as expectedcaptureImagemethod of theGemViewclass now completes when multiple calls are done in quick successiongetLaneImagemethod of theNavigationInstructionnow takes into account the givenLaneImageRenderSettingsparametergetImagemethod of theSignpostDetailsnow correctly takes into account the givenSignpostImageRenderSettingsparameter- all methods/getters returning
UInt8List?result as image now returnnullinstead of returning invalid data
[2.13.0] - 2025-02-13
Added
soundMarks,activityRecord,soundMarksgetters to theLogMetadataclass.PlaybackandSoundmark,ActivityRecordclassescurrentRecordPathgetter andsetActivityRecordgetters from theRecorderclassplaybackgetter to theDataSourceclass.createSimulationDataSourceandcreateLogDataSourcepreviewDataJsongetter to theOverlayItemclassactivityRecordgetter onLogMetaDataclassheartRatevalue to theDataTypeenum. Implies id changes. Renamedaltitudevalue toattitudeRotationRate,Attitude,Battery,MagneticField,Orientation,Temperature,MountInformation,Activityclasses and relatedSenseDataFactorymethodsisPrintSdkDebugInfoEnabledandisObjectAliveCheckEnabledgetters/setters to theDebugclassDataSourceListenerclassaddListener,removeListenerAllDataTypesandremoveListenerto theDataSourceclass.removeListenermethod from theRouteBase.withBool,withInt,withReal,withString,withListfactory methods toGemParameter
Changed
- Most images from the SDK return
Uint8List?instead ofUint8List - Updated
ColorExtensionin regards to the Flutter version 3.27 (https://docs.flutter.dev/release/breaking-changes/wide-gamut-framework). Might require API users to update to the latest Flutter version - Renamed
registerOnLongPressCallback,registerOnMapAngleUpdateCallbackandregisterOnMapViewMoveStateChangedCallbackmethods from theGemMapControllerclass toregisterLongPressCallback,registerMapAngleUpdateCallback,registerMapViewMoveStateChangedCallback. Old methods are still available but they are deprecated and will be removed in a future release RecorderBookmarks.createnow returnsRecorderBookmarks?instead ofRecorderBookmarksgetMapExtendedCapabilitiesnow returnsSet<MapExtendedCapability>instead of packedintstopRecordingfromRecorderclass is now async and needs to be awaitedgetOverlayByIdandgetOverlayAtmethods of theOverlayCollectionnow returnOverlayItem?instead ofOverlayItemsetConfigurationmethod of theDataSourceclass has named parameters. ThegetConfigurationnow returnsSensorConfigurationinstead ofMap<String, String>alignNorthUptakesAnimationinstead ofDurationas a parameterSearchableParameterListextendsParameterList. Created default constructors forParameterListandSearchableParameterList. TheSearchableParameterListconstructor can take an optionalParameterListGemView,NetworkProvider,RouteListener,OffboardListener,NavigationListener,LandmarkStoreListener,AlarmListener,PositionListener,DataSourceListenerclasses no longer implementEventDrivenProgressListener. They now implementEventHandlergetPositionandgetImprovedPositionmethods fromPositionServiceclass replaced bypositionandimprovedPositiongettersgetCountryLevelItemmethod of theGuidedAddressSearchServiceclass now returnsLandmark?instead ofLandmarkexportAsmethods of theRouteandPathclasses returnStringinstead ofUint8List
Fixed
setMapStylemethod from theMapViewPreferencesclasssetCameraFocusfrom theFollowPositionPreferencesclass returns correct valuegetMarkerByIdfrom theMarkerCollectionclassgetBorderColorAt,getFillColorAt,getBorderSizeAt,getInnerSizeAtmethods ofMapViewPathCollectionclassformatmethod of theAddressInfoclassaddmethod of theParameterListclassgetPreferencesmethod from theRouteBookmarksclasssearchLandmarkDetailsmethod from theSearchServiceclass
Removed
registerOnNotifyCustommethod from theProgressListenerclassserializeListOfMarkersmethod is no longer public
[2.12.0] - 2025-01-30
Added
SenseData,GemImprovedPosition,CompassandAccelerationinterfaces and implementations.SenseDataFactoryclassprovider,latitude,longitude,altitude,speedAccuracy,hasSpeedAccuracy,hasCourse,hasCourseAccuracy,hasHorizontalAccuracy,hasVerticalAccuracygetters to theGemPositionclassisDataTypeAvailable,getDataTypeDescription,setConfiguration,getConfiguration,getPreferences,isMockData,getLatestData,setMockDataandavailableDataTypes,isSDKInstance,origin,dataSourceTypegetters ofDataSourceclassshowMapScaleandareMapScalesDrawnByUsergetters and setters to theMapViewPreferencesclassnotifyProgressIntervalsetter to theProgressListenerclassgetImprovedPositionandgetDataSourcemethods andsourceTypegetter to thePositionServiceclass
Changed
GemPositionis now an interface. All the fields contained within are now getters.GemPositionnow extendsSenseData.- Deprecated
timestampgetter fromGemPositionclass. pushDatamethod ofDataSourceclass takes a single required positionalSenseDataparameter instead of optionalExternalAccelerationDataandExternalPositionDataparametersstartRecordingmethod of theRecorderclass is now async and needs to be awaitedskipAnimationmethod ofGemViewtakes optionaljumpToDestinationparameter
Fixed
activateHighlightmethod ofGemViewnot takingrenderSettingsparameter into consideration- methods from the
MapViewRouteclass - more methods use
ApiErrorServicefor signaling failure and success notifyProgressIntervalandprogressMultipliergetters ofProgressListener
Removed
roadModifiers,speedLimitfields from theGemPositionclass as they are moved toGemImprovedPosition.GemPositionconstructor andto/fromJsonmethods
[2.11.0] - 2024-12-20
Added
ApiErrorServiceclassOTRouteclasspauseandresumemethods toRecorderclassisOTRouteandtoOTRoutemethods toRouteclasssetNavigationModifiersmethod ofDebugclass andNavigationModifiersenumpauseRecordingandresumeRecordingmethods ofRecordercreateExternalDataSourceandcreateLiveDataSourcestatic methods ofDataSourcesetTTSLanguagemethod ofSdkSettings
Changed
- Replace
XyTypewithPointas input parameter to methods fromMapViewandGemMapControllerclasses:highlightHoveredMapLabel,centerOnRouteInstruction,setSlippyZoomLevel,setZoomLevel,transformScreenToWgs - Replace
XyTypewithPointas input parameter to methods fromFollowPositionPreferencesclass:setCameraFocus,setDrawFPS - Replace return type
XyTypewithPointto methods and getters fromMapViewandGemMapControllerclasses:transformWgsListToScreen,transformWgsToScreen,cursorScreenPosition - Replace return type
XyTypewithPointtocameraFocusgetter fromFollowPositionPreferencesclass - Fields which should not be publicly accessible from listeners are now private. The
notify...methods are now internal. Affected classes areNetworkProvider,RouteListener,ProgressListener,OffBoardListener,NavigationListener,LandmarkStoreListener,IGemPositionListener,EventDrivenProgressListener,AlarmListener. Use the providedregister...methods instead of setting the callback function directly. labelingModefield of theMarkerRenderSettingsclass (andMarkerCollectionRenderSettingsextending class) is nowSet<MarkerLabelingMode>instead ofint?.- Fields from
ClimbSection,SurfaceSection,RoadTypeSection,SteepSection,AbstractGeometryItem,AbstractGeometry,RectType,RenderSettings,RouteRenderSettings,HighlightRenderSettings,TimeDistance,MarkerCollectionRenderSettings,MarkerRenderSettings,RoadInfo,Language,RecorderConfigurationandTimeDistanceCoordinateclasses are no longer nullable. Initiated default constructor values with appropriate values. RouteInstruction,PTRouteInstructionandEVRouteInstructionextendRouteInstructionBase. ThetoEVRouteInstructionandtoPTRouteInstructionare only in theRouteInstructionclassRouteSegment,PTRouteSegmentandEVRouteSegmentextendRouteSegmentBase. ThetoEVRouteSegmentandtoPTRouteSegmentare only in theRouteSegmentclassregister...methods fromGemMapControllerhave nullable parameters to allow unregistering.vizibilitygetter and setter fromMapSceneObjectclass tovisibility.insideCityAeanamed parameter fromAlarm.setOverSpeedThresholdmethod toinsideCityArea.- return type from
inttoGemErrorfromsetRouteRoadBlockmethod from theRoutingService enableDrawMarkersModemethod ofMapViewnow takes optionalMakerRenderSettingsparametergetContourGeograficAreamethod ofLandmarkreplaced withgetContourGeographicAreaitemandgroupvalues ofMarkerLabelingModeenum are new deprecated. AddeditemLabelVisibleandgroupLabelVisiblevalues.arrivalTimeanddepartureTimegetters ofPTRouteSegmentandarrivalTimeanddepartureTimegetters ofPTRouteInstructionnow returnDateTime?instead ofDateTime.- external
DataSourceobjects are instantiated using thecreateExternalDataSourcestatic method instead of constructor. - deprecated
NavigationEventTypeenum. - Made
onNavigationInstructionUpdatecallback of thestartNavigationandstartSimulationmethods ofNavigationServicenullable. TheonNavigationInstructionUpdatemethod will be removed as all features are already provided by more specialized callbacks. startNavigationandstartSimulationmethods ofNavigationServicereturnTaskHandler?instead ofTaskHandler. The valuenullis returned when starting the operation fails and theonErrorcallback is called with the error code.search,searchLandmarkDetails,searchAlongRoute,searchInArea,searchAroundPositionof theSearchServiceclass returnTaskHandler?instead ofTaskHandler. The valuenullis returned when starting the operation fails and theonCompleteCallbackcallback is called with the error code. ChangedonCompleteCallbackcallbackresultsparameter to non-nullable list of Landmarks. On error the list will be empty instead of null.calculateRouteof theRoutingServiceclass returnTaskHandler?instead ofTaskHandler. The valuenullis returned when starting the operation fails and theonCompleteCallbackcallback is called with the error code. ChangedonCompleteCallbackcallbackroutesparameter to non-nullable list of Routes. On error the list will be empty instead of null.searchReportsAlongRouteandsearchReportsAroundof theSocialOverlayclass returnTaskHandler?instead ofTaskHandler. The valuenullis returned when starting the operation fails and theonCompleteCallbackcallback is called with the error code. ChangedonCompleteCallbackcallbackroutesparameter to non-nullable list of OverlayItemPosition. On error the list will be empty instead of null.
Fixed
setRouteRoadBlockmethod from theRoutingServiceclass.registerOnMapViewMoveStateChangedCallbackcallback now provides correct area- Marker disapearing while passing nearby
exportLogreturns correct filename when no name is providedisTouchGestureEnabledmethod ofMapViewPreferencesclasssetMapViewPerspectivemethod ofMapViewPreferencesclass
Removed
CameraConfiguration,SizeType,AutoDisposableObjectclassesTimezoneResultclass and related enumsfromJsonmethod ofMarkerRenderSettingsandMarkerCollectionRenderSettingsclasseshasRoutesCollectionInit,hasPathCollectionInit,hasFollowPositionPrefsInitfields fromMapViewPreferencesclassrouteTrackgetter from theRouteBaseas it was replaced with thetrackgetter from theOTRouteclasstoJsonmethods fromParameterandConditionsclassesoverrideOverheatCheckfield ofRecorderConfigurationclass
[2.10.0] - 2024-11-29
Added
getLocalContentList,getStoreContentList,cancelmethods ofContentStoreclassorientationgetter,visibilitysetter and getter,maxScalegetter forMapSceneObjectclassaddUserMetadataandgetUserMetadatamethods andlogSizegetter ofLogMetadataclassisValidgetter ofVersionclassfromLatLongconstructor ofCoordinatesclass
Changed
startSimulationandstartNavigationofNavigationServicehave more optional callback functions parameters:onNavigationInstruction,onNavigationStarted,onDestinationReached,onBetterRouteRejected,onBetterRouteInvalidated,onSkipNextIntermediateDestinationDetected,onError,onNotifyStatusChange- Constructor of
GemMaphas optionalinitialMapStyleAssetparameter - renamed
GemMapControllerregister methods:registerFollowPositionStatetoregisterFollowPositionStateCallback,registerOnMapAngleUpdatetoregisterOnMapAngleUpdateCallback,registerOnMapViewMoveStateChangedtoregisterOnMapViewMoveStateChangedCallback resetMapSelectionmethod ofGemViewclass is now async- default value for
latitudeandlongitudefields ofCoordinatesclass are now2147483647 IMapViewListenerclass is now abstractGemViewclass implementsIMapViewListenerabstract classinitandreleaseViewmethods ofGemViewckass are now internalonFollowPostionStaterenamed toonFollowPositionStateinIMapViewListenerclass and subclassesGemMapandGemMapStatefields and methods are now private- type of
localTimefield ofTimezoneResultis nowDateTimeinstead ofTime
Fixed
setNavigationRoadBlockofNavigationServiceclass now takes length into accountgetUserMetadatamethod ofLogMetadataclassisDataTypeAvailablemethod ofLogMetadataclasscancelRoutemethod ofRoutingServiceclasscancelSearchmethod ofSearchServiceclassviewportgetter ofGemViewhas value as soon asonMapCreatedis calledtimestampsetter ofLandmarkclass
Removed
coordinatessetter ofMapSceneObjectclassSignpostImage,RoadInfoImage,LaneImage,TransferStatistics,TimeclassesgetImageByBitmapmethod ofLandmarkCategoryclasslistenergetter,setListenersetter abdhasPrefsInitfield ofGemViewclass
[2.9.0] - 2024-11-12
Added
monitorArea,unmonitorAreamethods andcrossedBoundariesgetter ofAlarmServiceclassgetMapReleaseInfo,getMapProviderIds,getProviderName,getProviderSentencemethods ofMapDetailsclassalgorithmType,allowOnlineCalculationbuildConnections,sortingStrategyfields ofRoutingPreferencesclasslandmarksgetter andeasyAccessOnlyResultsgetter and setter ofSearchPreferencesclassgetOverlayByIdmethod ofOverlayCollectionclasspaused,pausing,resumingvalues toRecorderStatusenumMapProviderIdenumPTAlgorithmTypeenum
Changed
overlaysofSearchPreferencesclass field type toOverlayMutableCollectionand it is now a getter- constructor of
SearchPreferencesnow takes optionaleasyAccessOnlyResultsparameter setCursorScreenPositionmethod ofGemViewis now async
Fixed
- distorted markers rendered on map when images are not square
setCursorScreenPositionmethod ofGemViewno longer freezes the app on some Android devices
Removed
waypointReachedvalue ofNavigationEventTypeenumstrictTrackFollowfield ofRoutingPreferencesclasslandmarkCategories,allStoreCategoriesList,hasLandmarkCategoryListmembers ofSearchPreferencesclassOverlayUuidCategoryUuidclass
[2.8.0] - 2024-11-01
Added
getMapCoverage,getCountryMapCoverage,getCountryName,getCountryNameByIndex,getCountryNameByISO,getLanguageCodeByIndex,getLanguageCodeofMapDetailscurrentRoadInformation,nextRoadInformation,nextNextRoadInformationgetters ofNavigationInstructionclasssearchReportsAround,addComment,updateReportmethods ofSocialOverlayclasshasPreviewExtendedData,previewData,categoryId,getPreviewExtendedData,cancelGetPreviewExtendedDatamethods ofOverlayItemclassupdateReportmethod ofSocialOverlayclassAlarmsListclassLandmarkPositionclassOverlayMutableCollectionclassAlarmSerivceclassAlarmListenerclassWeatherServiceclassParameterclassConditionsclassLocationForecastclassDaylightenumLocation Wikipediaexample for showing how to render the wikipedia page information for a point of interestWhat is Nearbyexample for showing how to search for points of interest (POIs) near the current location looking for a certain type of POIsTruck Profileexample for showing how to compute a route based on the accessibility given by the physical characteristics of a truckPublic Transitexample for showing how to compute and render a public transit route on the mapAssets Map Styleexample for showing how to apply a style from a.styleassetDisplay Cursor Street Nameexample for showing how to display the street name of the location at the cursor positionExternal Position Source Navigationexample for showing how to navigate by custom positions pushed to a external data sourceLane Instructionsexample for showing how to display the lane image for the current instructionOverlapped Mapsexample for showing how to display two overlapped mapsWeather Forecastexample for showing how to display the different types of weather forecasts for a location
Changed
- renamed
isCursorRenderEnabledmethod ofMapViewPreferencesclass tocursorRenderEnabled - added
autoGenerateLabelparameter toaddmethod ofMapViewRouteCollectionclass - added
onWaypointReachedcallback parameter tostartNavigationandstartSimulationmethods fromNavigationService MarkerRenderSettingsdefault constructor value of imageSize from -1 to 4- deprecated
waypointReachedvalue ofNavigationEventTypeenum as it was replaced withonWaypointReachedcallback
Fixed
atmethod ofSearchableParameterListaddmethod ofMarkerCollectionclassMarkersicon size recalculation
Removed
createmethod ofMapViewPathCollection
[2.7.0] - 2024-10-17
Added
SocialOverlay,SocialReportsOverlayCategory,SocialReportsOverlayInfo,OverlayItemPositionclassescheckTrafficAlongRoutesmethod ofDebugRouteListenerclassrouteListenergetter and setter ofRouteBaseLandmarkStoreTypeenumRoutePathAlgorithmFlavorenumRouteTypePreferencesenum
Changed
alternativesSchema,pedestrianProfile,resultDetails,routeResultType,routeTypeandrouteTypePreferencesfields ofRoutePreferencesare no longer nullable.routeGroupIdsEarlierLaterfield ofRoutePreferencesis of typeList<int>instead ofdynamicrouteTypePreferencesfield ofRoutePreferencesis of typeSet<RouteTypePreferences>instead ofinttypegetter ofLandmarkStorereturnsLandmarkStoreTypeinstead ofintreleasemethod ofGemKitis async
Fixed
preferencesgetter ofGuiddedAddressSearchreturns valid object after callingGemKit.release()
[2.6.0] - 2024-10-10
Added
MapViewRenderInfoclassMotorVehicleProfileclassLandmarkStoreListenerclassfromCoordinatesconstructor ofPathnavigationRouteLowRateUpdategetter and setter ofMapViewExtensiongetHighlightGroupItemIndexmethod ofMapViewExtensiongetCategoryCount,removeAllStoreCategories,getStoreIdAtmethods ofLandmarkStoreCollectionlandmarkStoresgetter ofLandmarkStoreServicescalemethod ofMapControllerViewDataTransitionStatusandViewDataTransitionStatusenumsaddListenerandremoveListenermethods ofLandmarkStoreService- more values to the
RoutePathAlgorithmenum
Changed
latitudeandlongitudemembers ofCoordinatesare no longer nullabletopLeftandbottomRightmembers ofRectangleGeographicAreaare no longer nullableradiusandcenterCoordinatesmembers ofCircleGeographicAreaare no longer nullableOverlayCategoryfields no longer nullableonNewPositionmethod ofIGemPositionListeneris abstract- constructor of
GuidedAddressSearchPreferencesis private createmethod ofPathhas required parameters and replacedformatparameter type toPathFileFormatfromintsetMinimumAllowedZoomLevelandsetLowEndCPUOptimizationsreplaced with settersminimumAllowedZoomLevelandlowEndCPUOptimizationsregisterViewRenderedCallbackofGemMapControllercallback parameter type fromdynamictoMapViewRenderInfoonMapViewRenderedcallback takesMapViewRenderInfoas argument instead ofdynamicgetAvailableOverlaysmethod ofOverlayServicetakes callback function parameter instead ofProgressListenercontentTypegetter ofContentUpdaterreturnsContentTypeinstead ofintgetRoutemethod ofMapViewRoutesCollectionreturns null for invalid indexRouteBookmarksclass moved toroute_bookmarks.dartfile. Added the new file toroutinglibTruckProfileandCarProfileextendMotorVehicleProfile
Removed
setPlaybackDataSourcemethod ofPositionServicecreatemethod ofGuidedAddressSearchPreferences.createmethod ofPositionServicecreatemethod ofTurnDetails
Fixed
getNextSpeedLimitVariationmethod ofNavigationInstructiongetLandmarks,getCategoryCount,getStoreIdAtandremoveAllStoreCategoriesmethods ofLandmarkStoregetPartAreamethod andareagetter ofMarkerlowEndCPUOptimizationsgetter and setter ofMapViewExtensiongetCategoryandhasCategoriesmethods ofOverlayInfogetDistanceOnRoutemethod ofRouteBasecaptureImagemethod ofGemViewcustomizeDefPositionTrackermethod ofMapSceneObjectimageSizefield ofMarkerCollectionRenderSettingsbreaking alignment
[2.5.0] - 2024-09-26
Added
importLogmethod ofRecorderBookmarkssetParallelDownloadsLimitmethod ofContentStoreregisterOnMapViewMoveStateChangedmethod ofGemMapControllercenterOnAreaRectmethod ofGemViewregisterLandmarkStoremethod ofLandmarkStoreServiceremoveLandmarkStoremethod ofLandmarkStoreServiceupdateLandmarkmethod ofLandmarkStoreclearmethod ofMarkerCollectiondeletemethod ofMarkerCollectiongetPointsGroupHComponentsmethod ofMarkerCollectiongetPointsGroupHeadmethod ofMarkerCollectionindexOfmethod ofMarkerCollectiongetBetterRouteTimeDistanceToForkmethod ofNavigationServicegetNavigationInstructionmethod ofNavigationServicegetNavigationParametersmethod ofNavigationServicegetNavigationRoutemethod ofNavigationServiceisNavigationActivemethod ofNavigationServiceisSimulationActivemethod ofNavigationServiceisTripActivemethod ofNavigationServiceisTripActivemethod ofNavigationServicesimulationMaxSpeedMultipliermethod ofNavigationServicesimulationMinSpeedMultipliermethod ofNavigationServicediskSpaceUsedPerSecondgetter ofRecordergetAvailableDataTypesgetter ofRecorderrecorderConfigurationgetter and setter ofRecorderstatusgetter ofRecorderchunkDurationSeconds,continuousRecording,overrideOverheatCheck,maxDiskSpaceUsed,keepMinSeconds,deleteOlderThanKeepMin,transportModefields ofRecorderConfigurationgetTimeDistanceCoordinateOnRoutemethod ofRouteBaseisCurrentThreadMainThreadgetter ofSdkSettings- overload for
==operator andhashCodemethod forBikeProfileElectricBikeProfile,BuildTerrainProfile,DepartureHeading,ElectricBikeProfile,EVProfile,CarProfile EntranceLocationsclassPTRouteclassPTRouteSegmentclassPTRouteInstructionclassPTBuyTicketInformationclassPTAlertclassRouteTrafficEventclass
Changed
- constructors of classes which should not be directly instantiated by the user are now private
- classes consisting only of static methods are abstract (
RouteBase,RoutingService,MapDetails,LandmarkStoreService,GuidedAddressSearchService,GenericCategories,SearchService,NavigationService) - all methods from
NavigationServiceare static getNextAddressDetailLevelmethod ofGuidedAddressSearchServicereturnsList<AddressDetailLevel>instead ofList<int>getStoreContentListmethod ofContentStorereturnsPair<List<ContentStoreItem>, bool>instead ofPair<ContentStoreItemList, bool>and is now staticwaypointsgetter ofRouteBasetransformed togetWaypointsmethod and takes a parameter of typeGetWaypointsOptionsstartRecordingandstopRecordingmethods ofRecorderreturnGemErrorinstead ofintexportLogmethod ofRecorderBookmarksreturnsGemErrorinstead ofintidgetter from all enum extensions no longer return-1on default casefromIdmethod ofContactInfoFieldTypeExtensionno longer returns nullableContactInfoFieldType, throwing exception on invalid inputisProtectedandisUploadedmembers ofLogMetadataare getters instead of methodsMarkerCollectionRenderSettingsextendsMarkerRenderSettingsTerrainProfile,ClimbSection,SurfaceSection,RoadTypeSection,SteepSectionand related enums moved to a new file
Removed
createmethod from classes where it is not appropriate- empty classes (
ClimbSectionList,RouteCollection,MapViewRouteCollection) firstandlastvalues fromContentTypeenum
Fixed
- caching mechanism of Marker images
getIdmethod ofLandmarkCategoryroutegetter ofLogMetadatarecorderConfigurationgetter ofRecordercurrentgetter ofGenericIteratorbuildTerrainProfilefield ofRoutePreferencesreturned bypreferencesgetter ofRouteBaseincorrect value
[2.4.0] - 2024-09-04
Added
addListmethod ofMapViewMarkerCollectionsdevicePixelSizemethod ofGemMapControllercenterOnRoutePartmethod ofMapViewLandmarkJsonandMarkerJsonfor optimization- labels for
Markers
Removed
MarkerSketchesclass and example
Changed
- Moved some methods to safecall
- Callback functions with multiple parameters now have named parameters
removemethod ofMapViewMarkerCollectionsrenamed toremoveAt
Fixed
getRenderSettingsmethod ofMapViewRoutesCollectionreturnsRouteRenderSettingswith correct values previously set withsetRenderSettingsmethodcursorSelectionMarkersmethod ofGemViewsearchInAreamethod ofSearchServicegetCoordinatesmethod ofMarkerlabelTextSizeandlabelTextColorofMarkerRenderSettingsindexOfmethod ofMapViewMarkerCollectionssetRenderSettingsmethod ofMapViewMarkerCollectionscontainsmethod ofMapViewMarkerCollectionsisSketchesmethod ofMapViewMarkerCollectionsremoveAtmethod ofMapViewPathCollection- zoom out effect when tapping fast on markers
[2.3.1] - 2024-08-09
Added
- More fields in
RouteRenderSettings NavigationStatusenum- Caching mechanism for images in
SdkSettingsclass andgetImageByIdmethod
Changed
- Some fields in
MarkerRenderSettingsare no longernullable routesparameter ofcenterOnRoutesis named andnullablenavigationStatusmethod ofNavigationInstructionclass returnsNavigationStatusDataSourcemethods returnGemErrorinstead ofint
Fixed
setMapStyleByPathmethod ofMapViewPreferencesclassenableOverlayanddisableOverlaymethods ofOverlayServiceclasscenterOnRoutesmethod ofMapViewclass- waypoints getters of
RouteSegmentandRouteBaseclasses removeLandmarkStoreIdmethod ofLandmarkStoreCollectionclassRouteRenderSettingsconstructor
[2.3.0] - 2024-08-05
Added
setMapStylewith binary dataremoveAllLandmarksmethod ofLandmarkStoreclassExternalInfoclassMapSceneObjectclassaddListmethod ofMarkerSketchesclassMarkerSketchesexampleenableTouchGesturesmethod ofMapViewPreferencesclass- More values to
RoadModifier RoadModifierExtension
Changed
- return type of method
hasChargeStopofEVRouteSegmentclass frominttobool cursorSelectionOverlaysmethod returnsOverlayItemOverlayServicemethods returnGemErrorinstead ofintLandmarkStoreCollectionmethods returnGemErrorinstead ofintMapViewMarkerCollectionsmethods returnGemErrorinstead ofintFollowPositionPreferencesmethods returnGemErrorinstead ofintsetImageFromIconIdmethod tosetImageFromIcon.GemIconparameter instead ofintContentStoreItemStatus.downloadWaitingNetworkID to 5DataType.gyroscopeID to 1024PositionRoadModifiertoRoadModifierAnimationExtensiontoAnimationTypeExtensionFixQualityExtensiontoPositionQualityExtensionPositionRoadModifiertoRoadModifierEMarkerLabelingModeExtensiontoMarkerLabelingModeExtensionERouteRenderOptionsExtensiontoRouteRenderOptionsExtensionGenericCategoriesIDsExtensiontoGenericCategoriesIdExtensionmapDetailsQualitygetter ofMapViewPreferencesreturnsMapDetailsQualityLevelinstead ofint- More methods throws exception instead of
String
Fixed
getMapViewRoute,getLabel,setLabelmethods ofMapViewRoutesCollectionclassadd,update,addTrips,sortOrdermethods ofRouteBookmarksfromJsonmethod ofEVProfileclassclearmethod ofMapViewMarkerCollectionsclasstimeStampgetter ofLandmarkclassreleaseViewAndroid native behavioursetMapRotationModeIOS native behaviour
[2.2.0] - 2024-07-10
Added
getRouteStatusandCalculationRunningmethods ofRoutingServiceclassgetRoadInfoImage,getRoadInfo,hasRoadInfo,isExitandgetExitDetailsmethods ofRoute Instructionclass,getExtraInfo,setExtraInfo,setRouteListenerandgetRouteListenermethods ofRouteclassisCalculationRunning,getRouteStatusmethods ofRoutingServiceclassverifyAppAuthorizationmethod ofSDKSettingsclass
Changed
- replaced
Timeobject withDateTimedart object in following methods: get and set timeStamp forLandmarkclass, get timeStamp forRouteobject, get timeStamp forRoutingPreferencesclass
Fixed
altitudefield ofGemPositionclassgeographicAreamethod ofLandmarkclass could cause app freeze
[2.1.0] - 2024-06-17
Added
PositionServicecustom data sourceuncategorizedLandmarkCategIdandinvalidLandmarkCategIdconstantsgetLogMetadatamethod ofRecorderBookmarksclass andLogMetadataclassEVRoutemethodsSearchPreferencesoverlaysSignpostItemclassgetTimeDistanceCoordinatesandgetWaypointsViamethods ofRouteclassMapCameramethodsGeographicAreaclasses and methodsOverlayServiceclass andgetAvailableOverlaysmethodcaptureAsImagemethod ofMapControllerclass [iOS only]getLatestOnlineMapVersionmethod ofMapDetailsclass
Changed
selectMapObjectsmethod has been replaced withsetCursorScreenPositionasyncGetContentStoreListandasyncDownloadare now FFI methods- images default size and format can be set with
setDefaultWidthHeightImageFormatofSdkSettingsclass getAbstractGeometrymethod has a new parameter,AbstractGeometryRenderSettingssetCursorScreenPosition,skipAnimation,scroll,getHighlightAreaandresetMapSelectionmethods ofMapControllerclass are now non-asyncsetLiveDataSourcenow returns GemErrorsegmentsgetter ofRouteclass returnsList<RouteSegment>instead ofRouteSegmentListgetPathmethod ofRouteclass now returns null path for invalid start and/or end instead of a Path with empty coordinates listgetTimeDistancenow has a bool parameteractivePart
Fixed
cancelSearchissue which causedonCompletedCallbackto not be called withGemError.canceledpolygonGeographicAreagetter ofRouteclassgetRealisticNextTurnImagemethod andgetTurnImageofRouteclassgetCoordinatesAtPercentstatic method ofPathclasstrafficEventsmethod forRoutetoEVRoutemethod ofRouteclassrouteTrackgetter ofRouteclassexportAsmethod ofPathclasscloneReversemethod ofPathclasscloneStartEndmethod ofPathclassgetWaypointsmethod ofPathclassgetElevationSamplesmethod ofRouteTerrainProfileclass behavior when callind with countSamples = 1SignPostDetailsclass getterswaypointsgetter ofRouteSegmentclassabstractGeometrygetter ofTurnDetailsclasscontainsLandmarkmethod ofLandmarkStoreclassgetCategoryByIdmethod ofLandmarkStoreclass now returns null object for an invalid idgetLandmarksmethod ofLandmarkStoreclass now returns all landmarks for an unspecified categoryIdgetLandmarkStoreByIdmethod ofContentStoreServiceclass now returns null object for an invalid idMapwidget issues on Android which caused map to overlap other UI elements when rotating the device or opening a webview page over the one with the mapisFollowingPositiongetter ofMapControllerclassaccuracyCircleVisibilitygetter and setter ofMapViewPreferencesclassgetFieldName,getFieldValue,getFieldTypemethods ofContanctInfoclass when calling with an invalid indexgetAllowOffboardServiceOnExtraChargedNetworkmethod ofSdkSettingsclassgetContourGeographicAreamethod ofLandmarkclassextraInfogetter ofLandmarkclass
[2.0.0] - 2024-05-22
Added
releaseNativemethodRouteRenderSettingsoptional parameter foraddmethod ofMapViewRouteCollection- Map creation parameters: initial coordinates, zoomLevel, area and appAuthorization
Markerclass that allows drawing user defined polygons/polylines on the maprefreshContentStoremethodgetContentParametersmethod forContentStoreItem
Changed
- Imports
- Replaced methods with
getandsetprefixes with Dart get and set - Renamed various members to match camelCase standard
- Replaced
createfactory with default constructor for multiple classes - Multiple methods are now non-async
- SDK initialization changed from
GemKitPlatfor.instance.loadNative()toGemKit.initize()-appAuthorizationis now a parameter ofGemKit.initize() setAllowConnectionofSdkSettingshas now callback parameters ofOffboardListenerinstead ofOffboardListenerobjectupdatemethod ofContentUpdaterhas nowonStatusUpdatedandonProgressUpdateparameters instead ofProgressListenerGemAnimationhas nowonCompletedparameter instead ofProgressListener- Replaced
ProgressListenerwithTaskHandler - Replaced error type from int to
GemErrorenum - Replaced
RgbawithColor - Replaced
widthandheightimage parameters withSize - Replaced
LandmarkList,RouteList,ContentStoreItemList,LandmarkCategoryListwith Dart lists - Added named parameters for some methods
- Renamed enums to match Dart standard
Fixed
getImage,setImage,setExtraImagemethods ofLandmarkContactInfoclasscenterOnAreaofGemMapControllerclass- set and get language for
SdkSettings - Check against null the MapView, when activity is paused / resumed
[1.9.0] - 2024-04-02
Added
- Address Search
- Offboard Listener
- Content Updater for ContentStore
dispatchonmainThreadon safecallObjectcanDoAutoUpdateflag for offboardlistener constructor- safe call for
gem_pathmethods - compare operator in Version class
dispatchOnMainThreadflag defaults true forclearmethod in Routingservice- AllStoreCategoriesList field in SearchPreferences
- ExternalRendererMarkers
setMapLanguagemethodsetCameraFocusandgetCameraFocusmethodsgetMapVersionmethodgetExtraImagemethod
Changed
- Refactor - modified more methods to non async
- Removed err == 0 check from
onNotifyCompletemethod on Search results setAllowAutoMapUpdateflag defaults to false- initSdk to initCoreSdk
- dispatchOnMainThread to true for route removal and setImageFromIcon
- NavigationProgressListener to ProgressListener in
setNavigationRoadBlock addmethod from LandmarkStoreCollection- Landmark and landmark store methods to safecall
setNavigationRoadBlockto static methodsetImagemethod for landmark to safecall- The way images can be obtained
Fixed
SetNamemethod in Landmark- speed issue for position on Android
- Version class
- Map update/Resource update listener(Works on Android)
- Version's minor and major fields
- ElectricBikeProfile
setBuildingVisibilitymethodaddStoreCategoryListmethod
[1.8.0] - 2024-01-30
Added
appDidEnterBackground,appDidBecomeActivemethodsonAngleMapUpdate,alignNorthUpmethodscursorSelectionStreets,cursorSelectionOverlayItemsmethodsgetImageById,getImageUId,getImage,getImageByBitmapmethodsclearAllButMainRoute,centerOnMapRoutesmethodhasCoordinates,hasSpeedmethodsgetNearestLocationmethod- arguments for
asyncDownloadmethod addRoutemethodgetOsVersion- automatic destructor
OffscreenBitmapobject- position listener methods non async
- default values for
RoutePreferences GenericCategoriesandLandmarkListCategoriesclassesFollowPositionPreferences[]operator toGemList- More methods in
RouteBookmarks routeRenderSettingsparameter when adding a route to view- auto for
AndroidViewMode - check for calling methods before the Native is loaded
Changed
- Made
LandmarkListiterable - Initialize the SDK earlier on Android
- Modified
cancelRouteandcancelNavigationto non async - Modified
centerOnArea,setCoordinates,centerOnRoutesto non async - Modified
removeLandmarkto non async - Modified all
LandmarkStoreandLandamrkStoreCollectionmethods to non async - Created a base class for lists (
Iterable) - Made the getter for displayed routes non async
- Modified
getTurnInstructionnon async - Made
cancelSearchstatic - Modified
ContentStoreItemListto use GemList
Fixed
- Activity lifecycle on Android
- Real position issue
- Path: clear and getArea issues
- Blackscreen issue on Android 12
[Unreleased] - 2023-10-04
Added
- More parameters to route preferences
MinDurationparameter forRecorderonRouteUpdatedandonBetterRouteDetectedmethodsgetAbstractGeometryUIdmethod
Changed
- Modified cancel search method to non async
Fixed
cancelRouteissuesetLiveDataSourceerror throw
[1.5.6] - 2023-09-06
Added
- Content Store: Map Styles, Human Voices, Offline Maps
- Weather Service: Current Forecast, Hourly Forecast, Daily Forecast
- New map gesture: Long Press
- Recorder: Record route, export as .GPX
- SDK Settings: Unit System, Language, Set Navigation Voice, Allow Offboard Service on Charged Network
- Map Details: Get Country Flag by ISO code
- Map Styles: Apply Map Style, Get Current Map Style
Changed
- SDK Settings methods are now static and non-async
Fixed
- Fixed an issue where screen rotate on Android would cause loss of connection to SDK
[1.5.2] - 2023-08-09
Added
- Draw route
- Route preferences
- Route profile sections: Surfaces, Road types, Climb
- Route path
- WGS to screen coordinates converter
Changed
- Modified Landmark to use direct FFI calls for getters.
- Bug fixing and improvements
[1.5.1] - 2023-08-01
Changed
- Bug fixing and improvements
[1.5.0] - 2023-07-25
Added
- Distance between 2 coordinates
- Image for landmarks
- Landmark selection on map
SearchService:searchInArea&searchAroundPosition- Route segments & route instructions
MapViewRouteCollectionmethods- Center camera on routes
- Abstract geometry image for navigation instructions
- Navigation events callback: new instruction, waypoint reached & destination reached
- Voice instructions with text-to-speech
- Animations for center camera on coordinates & follow position
PositionService- Follow position enter/exit events
LandmarkStoreContent: custom storesLandmarkStoreContent: add, remove & contains methods
[1.4.6] - 2023-07-22
Changed
- Bug fixing and improvements
[1.4.5] - 2023-07-18
Changed
- Bug fixing and improvements