Licenses explained
The HERE SDK for Flutter is available in two different licenses (formerly known as editions):
- Explore license: A subset of the Navigate license with features such as online search and routing for multiple transport modes including car, bus, truck and electric vehicles.
- Navigate license: The most feature-rich license that includes online / offline turn-by-turn navigation and other advanced features.
A few of the features that are available exclusively as part of the Navigate license:
- Turn-by-turn-navigation.
- Offline map data as downloadable countries or regions, offline search and offline routing.
- HERE Positioning
While each license provides a tailored map experience, both licenses feature the integration of the HERE Rendering Engine:
- The HERE Rendering Engine offers visually appealing true 3D maps that provide a smooth map experience and highly performant map.
- Benefit from features such as multiple map view instances, an integrated tool chain for map customization, full 3D camera control and seamless map scheme switches.
Internally, each license of the HERE SDK 4.x shares a set of common modules. For example, the SearchEngine is part of a module that is used by all licenses. Therefore, such functionality and the related APIs are the same for both licenses. On top, all features of the Explore license are also available for the Navigate license. However, the HERE SDK (Explore) uses a more light-weighted map data format.
If you are still unsure what license you should choose, try to answer the following questions:
- Do you want to offer the best and most advanced map experience, but you do not need any of the advanced features such as navigation? Then you might want to choose the Explore license.
- Does your app rely on any of the available advanced features? Choose the Navigate license.
- The Navigate license is only available for customers who have signed a contract with HERE Technologies. Are you waiting for your license? Consider starting with the Explore license, which offers a subset of the same APIs available with the Navigate license.
A more detailed overview of the available features can be found in the feature list.
Waypoint.transitRadiusInMeters, please use Waypoint.radiusInMeters instead.Waypoint.radiusInMeters as distance for candidates of a road to be used as a waypoint for the route calculation. It replaces the deprecated Waypoint.transitRadiusInMeters.MapFeatures.ambientOcclusion and MapFeatures.shadows will be prohibited, even if there is a request to enable them. MapFeatures.congestionZones, MapFeatures.environmentalZones, MapFeatures.lowSpeedZones and roads in MapScheme.hybridDay, MapScheme.hybridNight, MapScheme.liteHybridDay, MapScheme.liteHybridNight, MapScheme.logisticsHybridDay, MapScheme.logisticsHybridNight display visible darkening due to overlapping rendering. Roads show this darkening at the road segment junctions. For semi-transparent MapPolyline, the polylines will lose their transparency. Furthermore, MapFeatures.terrain with MapFeatureModes.terrain3D will be automatically switched to MapFeatureModes.terrainHillshade if the GPU is PowerVR Rogue.RoutingError.INVALID_PARAMETER on EV routes that use RouteHandle based route calculations that happens when calling RoutingEngine.setCustomOption() with options that are not supported by the backend. The options are ignored.MapPolyline rendering on Android when offscreen rendering is disabled. Semi-transparent polylines now maintain transparency and blend colors as expected. As a result, overlapping regions may be visible depending on the LineCap type used.MapPolylineSolidMultiColorRepresentation so that 1.0 must be the last color stop. Note that this is a beta release of this feature.TileKey.fromGeoCoordinates(GeoCoordinates coordinates, int storageLevel, TilingScheme tilingScheme) factory method for creating TileKey objects containing specific geo-coordinates.HereMapController.style to MapScene.style. Note that this is a beta release of this feature.MapScene to hide bridge building geometries (extruded buildings, footprints, and labels) when they overlap with road geometry.MapMarker icon above overlapping marker icons while still allowing its text label to participate in collision detection and be hidden. See MapMarker.iconOverlapAllowed for details. This setting has no effect when MapMarker.overlapAllowed is true.RoutingError.invalidParameter that occurred when BatterySpecifications.connectorTypes contained both ChargingConnectorType.tesla and ChargingConnectorType.saeJ3400. Route calculation now continues with ChargingConnectorType.saeJ3400.MapSceneMapPickFilterContentType that used to occur when attempting to pick a result on the map.4.27.3_LTS, currently planned for September 2, 2026.MapFeatures.ambientOcclusion and MapFeatures.shadows will be prohibited, even if there is a request to enable them. MapFeatures.congestionZones, MapFeatures.environmentalZones, MapFeatures.lowSpeedZones and roads in MapScheme.hybridDay, MapScheme.hybridNight, MapScheme.liteHybridDay, MapScheme.liteHybridNight, MapScheme.logisticsHybridDay, MapScheme.logisticsHybridNight display visible darkening due to overlapping rendering. Roads show this darkening at the road segment junctions. For semi-transparent MapPolyline, the polylines will lose their transparency. Furthermore, MapFeatures.terrain with MapFeatureModes.terrain3D will be automatically switched to MapFeatureModes.terrainHillshade if the GPU is PowerVR Rogue.MapScene.addMapPolylineLayer(String, MapLayerPriority?) to create a named polyline layer at a specific render priority. Added MapScene.addMapPolylineToLayer(MapPolyline, String) and MapScene.addMapPolylinesToLayer(List<MapPolyline>, String) to add polylines to a named layer. Added MapScene.removeMapPolylineLayer(String) to remove a named polyline layer and all polylines it contains.MapContextSceneLoadCacheOptions and MapContextMemoryManagementOptions.sceneLoadCacheOptions for scene load cache customization. Note that this is a beta release of this feature.HazardousMaterialRestriction.hazardousMaterial. Use HazardousMaterialRestriction.hazardousMaterials instead.MapFeatures.ambientOcclusion and MapFeatures.shadows will be prohibited, even if there is a request to enable them. MapFeatures.congestionZones, MapFeatures.environmentalZones, MapFeatures.lowSpeedZones and roads in MapScheme.hybridDay, MapScheme.hybridNight, MapScheme.liteHybridDay, MapScheme.liteHybridNight, MapScheme.logisticsHybridDay, MapScheme.logisticsHybridNight display visible darkening due to overlapping rendering. Roads show this darkening at the road segment junctions. For semi-transparent MapPolyline, the polylines will lose their transparency. Furthermore, MapFeatures.terrain with MapFeatureModes.terrain3D will be automatically switched to MapFeatureModes.terrainHillshade if the GPU is PowerVR Rogue.LocationIndicator.setMarker3dModel(MapMarker3DModel, double, LocationIndicatorMarkerType). Use LocationIndicator.setMarker3dModelWithRenderSizeUnit(MapMarker3DModel, double, LocationIndicatorMarkerType, RenderSizeUnit) instead.MapCameraKeyframeTrack.lookAtDistanceWithEasing(List<ScalarKeyframe>, Easing, KeyframeInterpolationMode). Use MapCameraKeyframeTrack.lookAtDistanceWithKind(MapMeasureKind, List<ScalarKeyframe>, Easing, KeyframeInterpolationMode) instead.ViolatedRestriction.forbiddenTruckType. Use ViolatedRestriction.Details.forbiddenTruckCategory instead.VehicleSpecification.truckType. Use VehicleSpecification.truckCategory instead.RoadShieldIconProperties.isoCountryCode and Span.isoCountryCode to provide a type-safe country code value, aligned with other HERE SDK APIs.RoadShieldIconProperties.countryCode. Use RoadShieldIconProperties.isoCountryCode instead.ManeuverAction.leftFork and ManeuverAction.rightFork were returned instead of ManeuverAction.leftRamp and ManeuverAction.rightRamp for road bifurcations, resulting in an inaccurate maneuver icon.Span.isoCountryCode to be used with RoadShieldIconProperties.isoCountryCode.Anchor2D.center(), Anchor2D.top(), Anchor2D.topRight(), Anchor2D.right(), Anchor2D.bottomRight(), Anchor2D.bottom(), Anchor2D.bottomLeft(), Anchor2D.left() and Anchor2D.topLeft().offlineSearch value to SDKNativeEngine.PurgeMemoryStrategy enum. Calling purgeMemoryCaches(offlineSearch) clears only offline search caches, leaving map tile and routing caches intact.MapImage.size : Size2D property that returns the pixel size of the image.MapPolylineSolidMultiColorRepresentation API. Additionally, the performance of this feature was improved. Note that this is a beta release of this feature.MapInteractionListener to support receiving notifications from map interactions. Added enum class MapInteractionState to describe the supported states of a map interaction. Added Gestures.mapInteractionListener property to store the current MapInteractionListener.Color DataAttributes.getColor() to get an attribute of type Color and DataAttributeBuilder.withColor(String, Color) to add an attribute of type Color.MapArrow.progress and MapArrow.progressColor properties to style two parts of a map arrow with different colors.EVChargingLocation.nearbyPlaces that represents the list of Places within walking distance from the EV charging location and EVChargingLocation.hasMoreNearbyPlaces that represents the boolean flag indicating whether there are additional nearby places beyond those included in the EVChargingLocation.nearbyPlaces list.MapContextMemoryManagementResult.resultCode by a boolean MapContextMemoryManagementResult.success to represent the failure or success of the method MapContext.setMemoryManagementOptions(). In case the input value for tile cache or video memory is larger than the supported maximum allowed limit, it is clamped. Removed the obsolete beta API enum MapContextMemoryManagementResultCode.EVSearchEngine which provides detailed information about EV charging locations. For information on how to obtain the required license, see HERE EV Charge Points API v3 - Developer Guide. Introduced the new EVChargingLocation type, which exposes charging location details such as operator, suboperator and eMSPs info, facility types, parking type, energy mix, EVSEs, tariffs, connector groups, truck restrictions and support phone number. EVChargingLocation is accessible via Place.details.evChargingLocation. Introduced EVSearchOptions to control the behavior of EVSearchEngine. Use SearchEngine.setEVInterface(EVSearchInterface) to attach an EVSearchEngine instance so that subsequent search calls automatically enrich results with additional EV information where applicable. Note that this is a beta release of this feature.MapScene.removeAllMapItems() to remove all map items from a scene.VehicleProfile. Use TransportSpecification instead. Deprecated VehicleType. Use TransportMode instead. Deprecated PedestrianProfile. Use TransportSpecification instead.SearchError.layersNotEnabled error code as it is no longer applicable. Use LayerConfigurationFeature.offlineSearchGlobal instead to enable the new offline search algorithm (beta).IndoorSectionDetails describing details of sections related to indoor routing. Added class IndoorManeuverActions containing supported types of actions for indoor routing. Added class IndoorRoutePlace representing a place for indoor routing.IndoorFeatures (previously in venue routing). Use IndoorLevelChangeFeatures instead. Removed IndoorLevelChangeAction. Use IndoorLevelChangeData instead. Removed IndoorManeuver (from venue routing). Use IndoorManeuver (in routing) instead. Removed IndoorSpaceAction. Use IndoorSpaceData instead.PlaceCategory.sightsLandmarkAttaction. Use PlaceCategory.sightsLandmarkAttraction instead.MapPolylineSolidMultiColorRepresentation API allowing users to create multi-colored polylines. DataAttributesAccessor and DataAttributeValue now support values of Color type. Note that this is a beta release of this feature.RoutingEngine.refreshRouteWithRouteHandleAndRefreshRouteParameters(...) method with a RefreshRouteParameters parameter to make parameters consistent.RoutingEngine.refreshRouteWithTraveledDistanceAndRoutingOptions(...) and RoutingEngine.refreshRouteWithRouteHandleAndRoutingOptions(...). Please use RoutingEngine.refreshRouteWithRouteHandleAndRefreshRouteParameters(...).VehicleSpecification.emptyWeightInKilograms to calculate routes based on the vehicle's empty weight. If no route can be found, VehicleRestrictionMaxWeightType.empty is set, and VehicleRestrictionMaxWeight.valueInKilograms contains the maximum allowed empty weight.MapCamera.setFarPlaneConfiguration() and MapCamera.FarPlaneConfiguration to override the far-plane distance per zoom level, with linear interpolation between zoom levels.MapContext.setMemoryManagementOptions(MemoryManagementOptions, SetVideoMemoryLimitCallback) and the callback MapContextSetVideoMemoryLimitCallback(int). Use MapContext.setMemoryManagementOptions(MemoryManagementOptions, MapContextSetMemoryManagementOptionsCallback) and the callback MapContextSetMemoryManagementOptionsCallback(MemoryManagementResult) instead. Added the new enum MapContext.MemoryManagementResultCode and the new struct MapContext.MemoryManagementResult. Note that this feature is released as beta and may contain bugs or unexpected behavior. Related APIs may change in future releases without a deprecation process.ChargingConnectorType.SAE_J3400 to support the SAE J3400 connector type for the North American Charging Standard (NACS).ChargingConnectorType.TESLA. Use ChargingConnectorType.SAE_J3400 instead.MapScene.addMapPolygons(...), MapScene.removeMapPolygons(...), and MapScene.removeAllMapPolygons(...) to add and remove collections of map polygons.MapScene.addMapMarkers3d(...), MapScene.removeMapMarkers3d(...), and MapScene.removeAllMapMarkers3d(...) to add and remove collections of 3D map markers.MapScene.removeAllMapPolylines(...) to remove all map polylines from the scene.BusSpecifications, CarSpecifications, and TruckSpecifications. Use TransportSpecification instead.MapScene.removeAllMapMarkers(...) to remove all map markers from the scene.TransportProfile class. Use TransportSpecification instead.VehicleSpecification.kingpinToRearAxleDistanceInCentimeters to calculate routes that support this kingpin to rear axle distance. In case no route can be found the ViolatedRestriction.details.maxKingpinToRearAxleDistanceInCentimeters contains the max distance.BicycleOptions class. Use the RoutingOptions class instead. Deprecated BusOptions class. Use the RoutingOptions class instead. Deprecated CarOptions class. Use the RoutingOptions class instead. Deprecated EVCarOptions class. Use the RoutingOptions class instead. Deprecated EVTruckOptions class. Use the RoutingOptions class instead. Deprecated PedestrianOptions class. Use the RoutingOptions class instead. Deprecated PrivateBusOptions class. Use the RoutingOptions class instead. Deprecated ScooterOptions class. Use the RoutingOptions class instead. Deprecated TaxiOptions class. Use the RoutingOptions class instead. Deprecated TruckOptions class. Use the RoutingOptions class instead.IsolineOptions.withCarOptions. Use the IsolineOptions.withRoutingOptions instead. Deprecated IsolineOptions.withTruckOptions. Use the IsolineOptions.withRoutingOptions instead. Deprecated IsolineOptions.withEVCarOptions. Use the IsolineOptions.withRoutingOptions instead. Deprecated IsolineOptions.withEVTruckOptions. Use the IsolineOptions.withRoutingOptions instead. Deprecated IsolineOptions.carOptions. Use the IsolineOptions.routingOptions instead. Deprecated IsolineOptions.truckOptions. Use the IsolineOptions.routingOptions instead. Deprecated IsolineOptions.evCarOptions. Use the IsolineOptions.routingOptions instead. Deprecated IsolineOptions.evTruckOptions. Use the IsolineOptions.routingOptions instead.MapFeatures.roadExitLabels default enabled mode changed from roadExitLabelsNumbersOnly to MapFeatureModes.roadExitLabelsAll mode for MapScheme.logisticsDay, MapScheme.logisticsNight, MapScheme.logisticsHybridDay, MapScheme.logisticsHybridNight map schemes. For other map schemes, roadExitLabelsNumbersOnly will stay as the default feature mode. An overview of the new default map features and map feature modes per map scheme can be seen in the HERE Style Editor documentation.EVChargingLocation.supportPhoneNumber for the phone number that EV drivers should call when they need assistance at the charge location.TruckType class. Use the TruckCategory class instead. Deprecated VehicleSpecification.truckType. Use the VehicleSpecification.truckCategory instead.EVChargingLocation.timeZone for the time zone of the charging location and EVChargingConnector.tariffIndexes for the tariff indexes of the charging location.MapContext, MapContext.getMemoryManagementOptions(), MapContext.setMemoryManagementOptions(MemoryManagementOptions,MapContextSetVideoMemoryLimitCallback), and lambda MapContext.MapContextSetVideoMemoryLimitCallback(int). Added struct MapContext.MemoryManagementOptions. Added the enum MapContext.MemoryManagementStrategy.Note: This is a beta release of this feature, so there could be a few bugs and unexpected behaviors. Related APIs may change for new releases without a deprecation process.
LockingProcess.getLockingProcessId(SDKOptions). Use LockingProcess.getLlockingProcessId(AndroidContext, SDKOptions) instead. Deprecated method LockingProcess.destroyLockingProcess(SDKOptions, Long). Please use LockingProcess.destroyLockingProcess(AndroidContext, SDKOptions, Long) instead.route.calculationOptions(...). Use RoutingOptions instead. Deprecated RefreshRouteOptions and RefreshRouteOptionsData use the RoutingOptions class from the route object instead.RoutingOptions, RoutingInterface.calculateRouteWithRoutingOptions(...), Route.routingOptions and RoutingEngine.refreshRouteWithTraveledDistanceAndRoutingOptions(...), RoutingEngine.refreshRouteWithRouteHandleAndRoutingOptions(...), RoutingEngine.importRouteWithRoutingOptions(...), RoutingEngine.importRouteWithStopsAndRoutingOptions(...), RoutingEngine.importRouteFromHandleWithRoutingOptions(...). The APIs are considered to be stable.TollFare interface for online-routing.VehicleSpecification.CarBuilder.withTruckCategory(), VehicleSpecification.CarBuilder.withIsTruckLight(), VehicleSpecification.CarBuilder.withWeightPerAxleGroup(), VehicleSpecification.CarBuilder.withHazardousMaterials(). Removed VehicleSpecification.TaxiBuilder.withTruckCategory(), VehicleSpecification.TaxiBuilder.withIsTruckLight(), VehicleSpecification.TaxiBuilder.withWeightPerAxleGroup(), VehicleSpecification.TaxiBuilder.withHazardousMaterials(). Removed VehicleSpecification.BusBuilder.withTruckCategory(), VehicleSpecification.BusBuilder.withIsTruckLight(), VehicleSpecification.BusBuilder.withHazardousMaterials(). Removed VehicleSpecification.PrivateBusBuilder.withTruckCategory(), VehicleSpecification.PrivateBusBuilder.withIsTruckLight(), VehicleSpecification.PrivateBusBuilder.withHazardousMaterials(). The class VehicleSpecification is marked as beta, so no deprecation process is necessary.fromDefaultParameterConfiguration() static function to RoutingOptions, which constructs a RoutingOptions object with the transport specifications taken from SDKNativeEngine.parameterConfig.transportSpecification. Note: This is a beta release of this feature. There could be a few bugs and unexpected behaviors. Related APIs may change for new releases without a deprecation process.RoutingEngine.importCarRoute(...), RoutingEngine.importPedestrianRoute(...), RoutingEngine.importBicycleRoute(...), RoutingEngine.importTruckRoute(...), RoutingEngine.importTaxiRoute(...), RoutingEngine.importScooterRoute(...), RoutingEngine.importBusRoute(...), RoutingEngine.importPrivateBusRoute(...), RoutingEngine.importEVCarRoute(...), RoutingEngine.importEVTruckRoute() methods. Use the RoutingEngine.importRouteWithRoutingOptions(...) method instead. Deprecated RoutingEngine.importCarRouteWithStops(...), RoutingEngine.importPedestrianRouteWithStops(...), RoutingEngine.importBicycleRouteWithStops(...), RoutingEngine.importTruckRouteWithStops(...), RoutingEngine.importTaxiRouteWithStops(...), RoutingEngine.importScooterRouteWithStops(...), RoutingEngine.importBusRouteWithStops(...), RoutingEngine.importPrivateBusRouteWithStops(...), RoutingEngine.importEVCarRouteWithStops(...), RoutingEngine.importEVTruckRouteWithStops(...)methods. Use theRoutingEngine.importRouteWithStopsAndRoutingOptions(...)method instead. DeprecatedRoutingEngine.importRouteFromHandle(...)method. Use theRoutingEngine.importRouteFromHandleWithRoutingOptions` method instead. Note: The suggested methods are still marked as beta, but the APIs are already considered stable, and we plan to move them out of beta in the next release.RoutingInterface.calculateCarRoute(...), RoutingInterface.calculatePedestrianRoute(...), RoutingInterface.calculateBicycleRoute(...), RoutingInterface.calculateScooterRoute(...), RoutingInterface.calculateTruckRoute(...), RoutingInterface.calculateTaxiRoute(...), RoutingInterface.calculateBusRoute(...), RoutingInterface.calculatePrivateBusRoute(...), RoutingInterface.calculateEVCarRoute(...), RoutingInterface.calculateEVTruckRoute(...) methods. Use the RoutingInterface.calculateRouteWithRoutingOptions(...) method instead. Note: The suggested methods are still marked as beta, but the APIs are already considered stable, and we plan to move them out of beta in the next release.RoutingEngine.refreshRoute(...) method with RefreshRouteOptions as parameter. Use the RoutingEngine.refreshRoute(...) method with RoutingOptions parameter instead. Deprecated RoutingEngine.refreshRouteWithTraveledDistance(...) method. Use the RoutingEngine.refreshRouteWithTraveledDistanceAndRoutingOptions(...) method instead. Note: The suggested methods are still marked as beta, but the APIs are already considered stable, and we plan to move them out of beta in the next release.MapSceneLoadOptions: Represents the complete configuration for loading a map scene, combining the scene source (MapScheme or configurationFile) and optional settings like enabledFeatures, disabledFeatures, watermarkStyle, and overridingMapStyle. Added MapSceneLoadOptionsBuilder: Builder class for creating MapSceneLoadOptions instances. The builder enforces that exactly one mapScheme or configurationFile is set. Added MapScene.loadSceneWithOptions(MapSceneLoadOptions, MapSceneLoadSceneCallback): Asynchronously loads a map scene using MapSceneLoadOptions. This unified API supports loading from either a map scheme or configuration file, with optional feature and watermark configuration. This update introduces a new unified API to load scenes with a builder pattern that provides a cleaner, more type-safe way to load map scenes. The builder enforces mutual exclusivity between mapScheme and configurationFile at build time. Note: This is a beta release of this feature. There could be a few bugs and unexpected behaviors. Related APIs may change for new releases without a deprecation process.SearchOptions.distributedResults in SearchEngine, that indicates if search along the route should produce well-distributed results.url_launcher plugin.PedestrianSpecification, ScooterSpecification, TaxiSpecification classes, containing attributes for pedestrian, scooter and taxi profiles. Added TransportSpecification class which contains all attributes for a transport mode (vehicle, pedestrian, scooter and taxi).VehicleSpecification.allowDriveThroughTaxiRoads. The property was moved to TaxiSpecification.allowDriveThroughTaxiRoads. Removed VehicleSpecification.allowScooterOnHighway. The property was moved to ScooterSpecification.allowScooterOnHighway.RoutingOptions.transportMode. It is replaced with RoutingOptions.transportSpecification.transportMode. Removed RoutingOptions.occupantsNumber. It is replaced with RoutingOptions.transportSpecification.vehicleSpecification.occupancy. Removed RoutingOptions.vehicle. It is replaced with RoutingOptions.transportSpecification.vehicleSpecification. Removed TransportedCargo and RoutingOptions.transportedCargo. All the fields of TransportedCargo were moved to VehicleSpecification. Removed RoutingOptions.walkSpeedInMetersPerSecond. It is replaced with RoutingOptions.transportSpecification.pedestrianSpecification.walkingSpeedInMetersPerSecond.RoutingOptions.transportSpecification which will include the transport mode and the vehicle, pedestrian, scooter and taxi specification.MapFeatures.trafficLights and MapFeatureModes.trafficLightsAll to show traffic lights.RoutingOptions.commonRouteOptions. All its members were moved to RoutingOptions. The class RoutingOptions is marked as beta, so no deprecation process is necessary. Removed CommonRouteOptions class. All its members were moved to the RoutingOptions class. The class CommonRouteOptions was marked as beta, so no deprecation process is necessary.RoutingOptions.routeOptions which specifies the common route calculation options. This attribute was moved from CommonRouteOptions class, which was removed. Added RoutingOptions.textOptions which configures the textual content returned from the route calculation, such as localization, format, and unit system. This attribute was moved from CommonRouteOptions class, which was removed. Added RoutingOptions.avoidanceOptions which specifies the restrictions for route calculations. This attribute was moved from CommonRouteOptions class, which was removed. Added RoutingOptions.allowOptions which specifies the options explicitly allowed by user for route calculations. This attribute was moved from CommonRouteOptions class, which was removed. Added RoutingOptions.tollOptions which specifies how the tolls should be calculated, such as transponders, vehicle category, and emission type. This attribute was moved from CommonRouteOptions class, which was removed. Added RoutingOptions.maxSpeedOnSegments which specifies segments with restriction on maximum base speed expressed in meters per second. This attribute was moved from CommonRouteOptions class, which was removed.MapContentSettings.configureVehicleRestrictionFilterWithTransportSpecification(TransportSpecification) method to filter restrictions shown on the map and to easily match the filtering to routing parameters.MapContentSettings.configureVehicleRestrictionFilter(TransportMode, TruckSpecifications, List<HazardousMaterial>?, TunnelCategory?) method, use MapContentSettings.configureVehicleRestrictionFilterWithTransportSpecification(TransportSpecification) instead.SDKOptions.customOptions property to set the maximum thread count for selected HERE SDK components. Note: This is a beta release of this feature. There could be a few bugs and unexpected behaviors. Related APIs may change for new releases without a deprecation process.ParameterSpecification.Pedestrian class. The class was replaced by PedestrianSpecification. The class ParameterSpecification is marked as beta, so no deprecation process is necessary. Removed ParameterSpecification.pedestrian. The property was replaced with to ParameterSpecification.transportSpecification.pedestrianSpecification. The class ParameterSpecification is marked as beta, so no deprecation process is necessary. Removed ParameterSpecification.vehicleProfile. The property was replaced with to ParameterSpecification.transportSpecification.vehicleSpecification. The class ParameterSpecification is marked as beta, so no deprecation process is necessary.ParameterConfiguration.transportSpecification, which contains the default attribute values for attributes for vehicle, pedestrian, scooter and taxi specification.serialize() and deserialize() in Route to allow storing and restoring of Route objects.diagnosticsOutputPath field in NetworkSettings class to allow setting a file path that will be used to add verbose information in case network related issues occurred during use of the HERE SDK. Note: This is a beta release of this feature. There could be a few bugs and unexpected behaviors. Related APIs may change for new releases without a deprecation process.LineTileDataSource, PointTileDataSource, PolygonTileDataSource) attached to the map must be removed before calling SDKNativeEngine.dispose(), otherwise a deadlock will occur.VehicleProfile.truckType with VehicleProfile.truckCategory. Replaced VehicleSpecification.truckType with VehicleSpecification.truckCategory. Note that this is still a beta API.RoadType type. Use TimingProfile instead. Removed the previously deprecated Maneuver.roadType, Maneuver.nextRoadType. Use the Route.sections[Maneuver.sectionIndex].spans[Maneuver.spanIndex].streetAttributes object to determine the type of road. StreetAttributes.builtUpArea indicates an urban road; StreetAttributes.motorway, StreetAttributes.controlledAccessHighway, or StreetAttributes.ramp indicate a highway; all others indicate a rural road type.EVMobilityServiceProviderPreferences.excluded. Use other preference levels of EVMobilityServiceProviderPreferences instead.MapMarker as an icon without text if the text collides with other markers. See MapMarker.isTextOptional for details.ALA, ATF, BVT, GGY, HMD, JEY, UMI.ViolatedRestriction.forbiddenTruckCategory, which will replace the deprecated ViolatedRestriction.forbiddenTruckType.forbiddenTruckType from ViolatedRestriction. Use ViolatedRestriction.forbiddenTruckCategory instead.LineTileDataSource, PointTileDataSource, PolygonTileDataSource) attached to the map must be removed before calling SDKNativeEngine.dispose(), otherwise a deadlock will occur.MapCameraUpdateFactory.lookAtPointWithGeoOrientationAndMeasure, MapCameraUpdateFactory.lookAtPointWithMeasure, MapCameraUpdateFactory.lookToMatchGeoPointToViewPointWithOrientationMapMeasure and MapCameraUpdateFactory.zoomTo as well as animations created via MapCameraAnimationFactory.flyToWithZoom. Such animations did not interpolate correctly MapMeasure values for MapMeasureKind.zoomLevel and MapMeasureKind.scale but fell back to MapMeasureKind.distanceInMeters.HereMapController.shadowQuality property to use non-optional shadow quality. The default shadow quality is now set to ShadowQuality.medium. Note that this is a beta release of this feature.MapCameraKeyframeTrack.lookAtTargetWithEasing: altitudes are now ignored, aligning the behavior with the documentation of GeoCoordinatesKeyframe.value.lookAtDistanceWithKind(MapMeasureKind, List<ScalarKeyframe>, Easing, KeyframeInterpolationMode) method to MapCameraKeyframeTrack to support retrieving Kind measures such as distance, zoom, and scale level.MapCameraKeyframeTrack.lookAtDistanceWithEasing(List<ScalarKeyframe>, Easing, KeyframeInterpolationMode). Use MapCameraKeyframeTrack.lookAtDistanceWithKind(MapMeasureKind, List<ScalarKeyframe>, Easing, KeyframeInterpolationMode) instead.setMarker3dModelWithRenderSizeUnit(MapMarker3DModel model, double scale, LocationIndicatorMarkerType type, RenderSizeUnit renderSizeUnit) to LocationIndicator to specify how the vertex coordinates of 3D model are interpreted, either in world or screen coordinate space.LocationIndicator.setMarker3dModel(MapMarker3DModel model, double scale, LocationIndicatorMarkerType type) method. Use the new LocationIndicator.setMarker3dModelWithRenderSizeUnit(MapMarker3DModel model, double scale, LocationIndicatorMarkerType type, RenderSizeUnit renderSizeUnit) overloaded method instead.RoadFeature.seasonalClosure as an avoidance option in isoline calculations to improve route accuracy by excluding roads that are seasonally closed.MaterialReflectivity class, and LocationIndicator.getMaterialReflectivity and LocationIndicator.setMaterialReflectivity functions to enable the Location Indicator to interact with scene lighting. The Location Indicator casts and receives shadows when the MapFeatures.shadows feature is enabled. Note: This feature is in beta state and may exhibit bugs or unexpected behavior. Related APIs are subject to change in future releases without a deprecation process.WebImage.date and WebImage.publicationDate. The date information is no longer provided. Removed WebImage default constructor and WebImage.withSourceAndPublicationDate, use WebImage.withSource instead.SearchError.invalidParameter enum value. More descriptive error values are now provided, such as SearchError.queryEmpty and SearchError.invalidArea.ChargingConnectorType.GBT_DC, representing the Guobiao GB/T 20234.3 DC connector, to specify charging connector types in EV routing calculations.GeoPolyline.coordinatesAtOffsetInMeters() to convert offsets along the polyline to coordinates.GeoCoordinates.interpolate() to interpolate between two coordinates.maxGrossWeightInKilograms. Use maxWeight instead.evDetails from Route. Use consumptionInKilowattHours instead.evDetails from Section. Use consumptionInKilowattHours instead.BusSpecifications.lastCharacterOfLicensePlate. Use BusOptions.lastCharacterOfLicensePlate instead.LocationEngineBase.confirmHEREPrivacyNoticeInclusion() or LocationEngineBase.confirmHEREPrivacyNoticeException() instead.MapView shutdown. Starting with HERE SDK 4.22.5, a deadlock was possible when the MapView shut down while user callbacks were in progress, particularly when a custom raster tile source was being rendered.MapFeatures.trafficFlow on devices with a single core, regardless of the number of available cores. Note that this issue started to appear in HERE SDK 4.22.5.0.OfflineRoutingEngine would ignore highway sections when using VehicleSpecification in offline mode. This behavior occurred only when VehicleSpecification was not null. Highway sections are now considered in the same way as with the online RoutingEngine.ElectricVehicleOptions.batterySpecifications was changed to null. The field is now nullable. Note that this is a beta release of this feature.RoutingOptions to IsolineOptions. RoutingOptions can now be used with the IsolineRoutingEngine..tar.gz) are exported. These archives include POI categories and the JSON style files. When loading a custom style using MapScene.loadScene(...), the HERE SDK supports specifying a path to a JSON file, as before, but it also allows to set a configurationFile pointing to the zipped archive.TaskHandle to correctly return finished when route calculation completes and cancelled when it’s cancelled for routing, isoline, and traffic.positioning and serviceImprovement subcategories are correctly reported separately again.TruckSpecifications.currentWeightInKilograms field to indicate the current weight of the vehicle.AvoidanceOptions.zoneCategories, AvoidanceOptions.zoneIds and AvoidanceOptions.exceptZoneIds options for isoline calculation.ViolatedRestriction.Details.maxNumberOfTires, added VehicleSpecification.tiresCount to store maximum permitted number of tires. Note that this feature is also supported by the OfflineRoutingEngine, if available for your edition.TranslucentMapLayerGroup class and MapLayerPriorityBuilder.inGroup() function to support placing custom line layers into a translucent layer group. Custom line layers within a translucent group are rendered in an offscreen translucent pass, preventing self-overlapping translucent geometry from being alpha blended. Note that this is a beta release of this feature.intl plugin dependency was changed from version '0.19' to '>=0.19.0 <0.21.0'.LayerConfiguration.Feature.TRAFFIC. Please use LayerConfiguration.Feature.RDS_TRAFFIC instead.SDKOptions.accessKeyId and SDKOptions.accessKeySecret. Please use SDKOptions.authenticationMode instead.MapLayerBuilder API. MapPolyline.DashImageRepresentation map measure support has been updated to a new range of [3–19], replacing the previous range of [1–20].PlaceCategory.sightsLandmarkAttraction to use instead of PlaceCategory.sightsLandmarkAttaction that contains a typo. Note that this is also supported for the OfflineSearchEngine (if available for your license).PlaceCategory.sightsLandmarkAttaction that contains a typo. Please use PlaceCategory.sightsLandmarkAttraction instead.EVChargingPoolDetails.paymentIsRequired, EVChargingPoolDetails.subscriptionIsRequired, and EVChargingStation constructor with 12 parameters. Please use the default constructor instead.SearchEngine and OfflineSearchEngine: searchPickedPlace - please use searchByPickedPlace instead; searchByPlaceIdWithLanguageCode - please use searchByPlaceId instead; suggest - please use suggestByText instead.EVMobilityServiceProviderPreferences.excluded. Please use other pereferences levels of EVMobilityServiceProviderPreferences.EVChargingPool.access that represents the accessibility level of the charging pool. Also available offline for Navigate users.sdk.routing.Toll.tollSystem. Please use sdk.routing.Toll.tollSystems instead.MapMeasureKind.distance. Please use MapMeasureKind.distanceInMeters instead.building3dModels to advancedBuildings in the MapFeatures class. Also renamed building3dModelsGrayscale to advancedBuildingsGrayscale, building3dModelsTextured to advancedBuildingsTextured, and building3dModelTextureless to advancedBuildingsTextureless in the MapFeatureModes class.returnToRoute() that may happen when using AvoidanceOptions options to avoid corridors, bounding boxes or polygons.EVAccessRestrictionReason that represents the restriction reason of an EVChargingPool. Added EVChargingPool.accessRestrictionReasons that contains the list of reasons for restriction, accessible by offline search when access is EVAccessType.restrictedAccess.RouteOptions.occupantsNumber property. Please use occupantsNumber in corresponding transport mode options instead.Waypoint.isChargingStation property. Please use chargingStop property instead.ala, atf, bvt, ggy, hmd, jey, umi. Please use fin, fra, nor, gbr, aus, gbr, and usa respectively instead.MapPolyline.setRepresentaion(). The API is now considered to be stable.Waypoint.currentWeightChangeInKilograms for changing the current weight of the vehicle at waypoints. For example, this can be used when the vehicle takes additional cargo or unloads its cargo along the route. Note that this is also supported offline for the users of Navigate Edition.RoutingEngine and OfflineRoutingEngine to accept the new RoutingOptions class, which consolidates several existing option classes - including CarOptions, TaxiOptions, TruckOptions, and RefreshRouteOptions - into a unified configuration model. While the existing RouteOptions class can still be used as before, RoutingOptions provides the same capabilities in a more generic structure suitable for all supported transport modes. When creating a new route, make sure to specify RoutingOptions.transportMode. The new class also introduces extended routing configurations via the new classes CommonRouteOptions, VehicleSpecification, ElectricVehicleOptions with the new EmpiricalConsumptionModel and PhysicalConsumptionModel, and TransportedCargo. For example, it is now possible to specify whether a car is carrying cargo. Previously, this was only available for trucks. The existing RouteOptions can now be set under CommonRouteOptions. Note that this is a beta release of the new feature. Also, the OfflineRoutingEngine is only available in the Navigate Edition.EVChargingPool, Details.evChargingPool, EVChargingStation, EMobilityServiceProvider, EVChargingPool.eMobilityServiceProviders, EVChargingPool.cpoId, and EVChargingPool.evseInfo are now available to all customers and work with your standard credentials. Previously, these APIs were available only to our closed alpha group. Note that these APIs are also supported for the OfflineRoutingEngine, if available for your edition.horizontalAccuracyInMeters field of MapMatchedLocation. The API is now considered to be stable.MapMarker. Added constructor MapMarkerTextStyle.withFont() and a read-only fontName property.BatterySpecifications.maxPowerAtLowVoltageInKilowatts to allow vehicles which support 800V to use lower voltage charging stations.PassThroughFeature enum with ONLINE_SEARCH value. Enabling of this passthrough feature allows usage of online search in offline mode.MapPolyline with adjustable length progress. Transition between MapPolyline.lineColor and MapPolyline.progressColor now renders gradually. The length of that transition can be specified with MapPolyline.progressGradientLength property specified in zoom-level dependent pixels.MapLayer.setPriority() to correctly remove any previously applied priorities before applying new ones. Fixed internal behaviour of MapLayerPriorityBuilder and the resulting MapLayerPriority when a layer (category) is defined more than once with MapLayerPriorityBuilder.Previously, when chaining priorities, only in the case of two consecutive priority definitions for the same layer (category), the first one was overriden. Now, any previously defined priority in the chain for the same layer (category) is overriden.
Place.deserialize to handle missing enum PlaceType. If the PlaceType is missing in the serialized data, it is now set to PlaceType.unknown in the deserialized object. These features are also supported for the OfflineSearchEngine, if available for your edition.Updated 7 days ago