Release notes
Important: API versions described below are deprecated. Use versions 10.0 or higher. See instructions on How to migrate from lower versions.
7.4.0 (2023-11-15)
π Features and improvements
- Added
MarkerOptions.iconAnimationMode
andMarker.iconAnimationMode
to enable setting animation modes in markers. The mode can be normal or looped. - Added the
platformHttpClient
parameter toDGis.initialize
to set a custom implementation of a network client. To override the network client, create an implementation of theHttpClient
interface.
π Bug fixes
- Fixed behavior of the
SimpleClusterObject.setIcon
method during the first call. - Fixed clustering via
MapObjectManager.withClustering
that worked incorrectly with fractional values ofminZoom
andmaxZoom
. - Updated the company logo in the copyright and map snapshots.
- Fixed the
NavigationView
behavior to display only the remaining part of the route when requested to display the full route. - Disabled cashing of
FreeRoam
tiles during navigation by default. This is done to reduce the number of backend requests.
7.3.1 (2023-08-16)
π Bug fixes
- When forming a query to the directory via
SearchQueryBuilder
, the first value from theLocaleManager.locales
method is always taken to determine the locale, if the locale could not be determined by the search area.
7.3.0 (2023-08-07)
π Bug fixes
- When creating a query in the directory using the
SearchQueryBuilder
, the current user's geolocation is no longer used to determine the locale. Instead, the first value from theLocaleManager.locales
method is taken if an area for searching is not explicitly specified in theSearchQueryBuilder
. - Fixed an error that occurred when accessing fields of
SimpleClusterObject
while forming a cluster in the implementation of theSimpleClusterRenderer.renderCluster
method.
7.2.1 (2023-07-31)
π Features and improvements
- Added
SearchQueryBuilder.fromRubricIds
andSearchQueryBuilder.fromQueryTextAndRubricIds
methods for creating search queries with filtering by rubric identifiers. - Added the
DirectoryObject.tradeLicense
field with information about the organization's license.
7.1.0 (2023-07-20)
π Bug fixes
- Enabled support for the directory to work with the new key format.
- Fixed a crash when changing GPS availability using
DefaultLocationSource
. - Corrected the calculation of remaining working time for organizations in
Directory.workStatus
during offline search. - The
TUGC
control in theFreeRoam
mode is only available when adding aRoadEventSource
to the map.
5.4.0 (2023-07-20)
π Bug fixes
- Enabled support for the directory to work with the new key format.
5.3.1 (2023-06-27)
π Bug fixes
- Fixed a crash when changing GPS availability using
DefaultLocationSource
.
5.3.0 (2023-06-19)
π Features and improvements
- Enabled specifying excluded areas via
ExcludedArea
when searching for routes.
π Bug fixes
- Fixed the issue potentially causing program crashes when a marker is added to the map with a caption using
Marker
.
Migration from versions 5.x to 7.x
For all types of Mobile SDK:
- Styles must be downloaded again.
- Removed the
DgisSource.createOnlineDgisSource
andDgisSource.createOfflineDgisSource
methods. UseDgisSource.createDgisSource
with the additionalDgisSourceWorkingMode
parameter to set the map working mode. Four modes are available now:ONLINE
,OFFLINE
,HYBRID_ONLINE_FIRST
, andHYBRID_OFFLINE_FIRST
. - The
FollowController
now returnsStyleZoom
instead ofZoom
. - Renamed
FollowValue.ZOOM
toFollowValue.STYLE_ZOOM
. - Renamed
ZoomFollowController
toStyleZoomFollowController
. - Renamed
ZoomToTiltRelation
toStyleZoomToTiltRelation
. - Renamed
SpeedRangeToZoom
toSpeedRangeToStyleZoom
. - The
Projection.screenToMap
method now returns a null value instead of exception if a point is located outside the map. - Removed the
BaseCamera.setPadding
andBaseCamera.setPositionPoint
methods and theCameraPositionPointChangeBehaviour
enum. Now theBaseCamera.padding
andBaseCamera.positionPoint
fields are setters. - Removed the
Camera.animatedMoveStarted
andCamera.animatedMoveFinished
methods. Use theCamera.stateChannel
channel instead. - Renamed the
IndoorControlModel.levelNames
andIndoorControlModel.activeLevelIndex
channels toIndoorControlModel.levelNamesChannel
andIndoorControlModel.activeLevelIndexChannel
respectively. Removed theIndoorControlModel.onLevelClicked
method. Renamed theIndoorControlModel.isMarkedLevel
method toIndoorControlModel.isLevelMarked
.
Additionally, for the full version:
- Changed titles in the
ZoomFollowSettings
to better reflect their purpose. - Removed the
Model.applyBetterRoute
method. Instead, added theModel.betterRouteResponse
method and theBetterRouteResponse
enum to work with alternative routes. - Removed the
State.FREE_ROAM
value. To determine if the navigator is in the Free Roam mode, you need to check if theRouteInfo.routeBuildOptions
value is empty.
7.0.0 (2023-06-16)
π Features and improvements
- Enabled adding Lottie animation to a marker using
Marker.icon
. Added theimageFromLottieJSON
method. TheimageFromAsset
method now supports JSON files with Lottie animation. - Added the
dynamicFilters
field toSearchResult
: dynamic filters that can be additionally applied to search results. - Added the
dynamic
field toDirectoryFilter
to handle dynamic filters. - Added the
BaseCamera.maxTiltRestriction
method to define and obtain the function of dependence of the maximum camera tilt angle on the style zoom level. - Enabled creating the
MapObjectManager
with generalization of objects viaMapObjectManager.withGeneralization
. - Added the
Projection.screenToMapClipped
method that returns the map point nearest to the projection of the specified screen point. - In the navigator mode, alternative routes are now displayed and can be suggested as a better route. The
Model.betterRouteChannel
is a channel for notifications about alternative routes appearing. TheModel.betterRouteResponse
is a method for confirming an alternative route. Routes are configured withNavigationManager.alternativeRoutesProviderSettings
. - Added the
Voice.playWelcome
method to play a voice sample in the navigator. - Added more types to
RoutePointKind
for identifying point objects on a route. - Enabled specifying excluded areas via
ExcludedArea
when searching for routes.
βοΈ Breaking changes and backward compatibility
- Removed the
DgisSource.createOnlineDgisSource
andDgisSource.createOfflineDgisSource
methods. UseDgisSource.createDgisSource
with the additionalDgisSourceWorkingMode
parameter to set the map working mode. Four modes are available now:ONLINE
,OFFLINE
,HYBRID_ONLINE_FIRST
, andHYBRID_OFFLINE_FIRST
. - The
FollowController
now returnsStyleZoom
instead ofZoom
. - Renamed
FollowValue.ZOOM
toFollowValue.STYLE_ZOOM
. - Renamed
ZoomFollowController
toStyleZoomFollowController
. - Renamed
ZoomToTiltRelation
toStyleZoomToTiltRelation
. - Renamed
SpeedRangeToZoom
toSpeedRangeToStyleZoom
. - The
Projection.screenToMap
method now returns a null value instead of exception if a point is located outside the map. - Removed the
BaseCamera.setPadding
andBaseCamera.setPositionPoint
methods and theCameraPositionPointChangeBehaviour
enum. Now theBaseCamera.padding
andBaseCamera.positionPoint
field are setters. - Removed the
Camera.animatedMoveStarted
andCamera.animatedMoveFinished
methods. Use theCamera.stateChannel
channel instead. - Renamed the
IndoorControlModel.levelNames
andIndoorControlModel.activeLevelIndex
channels toIndoorControlModel.levelNamesChannel
andIndoorControlModel.activeLevelIndexChannel
respectively. Removed theIndoorControlModel.onLevelClicked
method. Renamed theIndoorControlModel.isMarkedLevel
method toIndoorControlModel.isLevelMarked
. - Changed titles in the
ZoomFollowSettings
to better reflect their purpose. - Removed the
Model.applyBetterRoute
method. Instead, added theModel.betterRouteResponse
method and theBetterRouteResponse
enum to work with alternative routes. - Removed the
State.FREE_ROAM
value. To determine if the navigator is in the Free Roam mode, you need to check if theRouteInfo.routeBuildOptions
value is empty.
π Bug fixes
- Decreased the size of the full build by reducing the dependence of the offline directory on other modules.
- Fixed memory leaks during the destruction of a map with active camera flyover.
- Optimized the usage of a single
DgisSource
data source added to two or moreMap
objects. - Fixed the
Map.dataLoadingStateChannel
channel performance so that it now considers any interactions with a map (for example, adding objects, changing themes, adding data sources). - If a camera position point is located closer to the bottom of the screen, the value of the maximum camera tilt angle can now be decreased.
- In the navigation mode, a route is displayed on a map only after a position appears on the route.
- Fixed returning to the tracking mode during the navigator default operation mode.
πΊ Map style updates
- Added support for a
Bus + No Entry
icon in lane callouts. - Set gradient colors for an inactive route line.
5.2.2 (2023-04-26)
π Bug fixes
- Fixed issues causing program crashes while the key specifies restrictions for regions that do not have offline data.
5.2.1 (2023-03-27)
π Bug fixes
- Fixed issues causing program crashes while the map is rotating.
- Fixed issues causing program crashes when markers with SVG images appear with animation.
5.2.0 (2023-03-16)
π Features and improvements
- Enabled the
DgisSource.setHighlighted
method to take building entrance IDs to add/remove highlight.
π Bug fixes
- Fixed the representation of markers with SVG images.
πΊ Map style updates
- Changed icon size for layers
Parking lots with unknown price
,Parking for persons with disabilities
,Parking for residents
,Parking for taxi
,Free parking
, andCovered parking
. - For the dark theme, changed the caption color for layers
Airport
,Railway station
,Bus terminal
, andPort
in thePOI icons
catalog. - Changed default parameters of the selected state of objects:
- Fill and outline color for the
Flat buildings
catalog; - Top, wall, and outline color for the
Building 3D
catalog; - Icons for the following layers:
Entrances, under buildings
,Entrances, over buildings
,Small gates
,Boom gates
,Parking lots with unknown price
,Parking for persons with disabilities
,Parking for residents
,Parking for taxi
,Free parking
, andCovered parking
. - Icons for the following catalogs:
Sights
(except for thePark
layer in dark theme),POI icons
(light theme only),Transport landmarks
(light theme only), andPublic transport stops icons
(except forRailway station point
andStop point
layers). - Icon size for the following catalogs:
Parking lots bubbles
(Paid parking
,Parking lots with unknown price
,Parking for residents
,Parking for persons with disabilities
,Parking for taxi
,Free parking
layers),POI icons
(dark theme only),Transport landmarks
(dark theme only),Sights
(only for thePark
layer in dark theme); - Icons and caption color for
Metro stations icons
(except forMCD 1
andMCD 2
layers) andMetro exits icons
(except forMCD 1
andMCD 2
layers) catalogs; - Icon size and caption color for
MCD 1
andMCD 2
layers inMetro stations icons
andMetro exits icons
catalogs; - Fill color for the
Roads
catalog (except forIntercity, background
andFederal, background
layers in the light theme); - Line width for the
Roads
catalog in the light theme (except forWalkways
,Intercity, background
, andFederal, background
layers).
- Fill and outline color for the
- Added a new
Entrances, arrows
layer with selected state only.
5.1.2 (2023-02-15)
π Bug fixes
- Fixed issues causing program crashes when a
Context
object is removed. - Fixed issues causing program crashes when caching of map tiles fails.
5.1.0 (2023-01-11)
π Features and improvements
- Added new
size
parameter (map size) to thecalcPosition
method.
π Bug fixes
- Fixed issues with the
HttpOptions.timeout
setting, which previously did not change the timeout ofOnlineSearchManager
/SmartSearchManager
requests. - Disabled
OpenStreetMap
appearing in the copyright. - Fixed navigation failure if the data package misses voice instructions.
- Fixed locale definition when creating requests via
OnlineSearchManager
.
5.0.1 (2022-12-08)
π Bug fixes
- Fixed issues that could result in a camera (in a rest state) flying to the current location after the navigation is finished.
5.0.0 (2022-12-06)
π Features and improvements
- Added pedestrian navigation inside buildings, which turns on when a created route takes floors into account (using the
PedestrianRouteSearchOptions.useIndoor
flag). When a user enters a building, the navigator UI displays a control panel with floor switches showing which floors the route passes. The bottom panel displays the floor number of the destination point. Added theIndoorDetector
property to theNavigationManager
class to define user location indoors in the navigation mode. - Enabled searching and displaying pedestrian routes inside building with floor plans.
- The
PedestrianRouteSearchOptions.useIndoor
flag must be enabled during search (enabled by default). - The indoor route is displayed in dotted lines on an active floor. If
RouteMapObjectDisplayFlag.inactiveFloors
is enabled, the route is displayed on all floors. - In the transitions between floors icons with instructions are displayed, controlled by
RouteMapObjectDisplayFlag.indoorInstructions
. - To get information about floors that the rout passes, use
Route.levels
.
- The
- Added a new
BaseCamera
class to store primary camera settings. TheCamera
class is a child ofBaseCamera
. Additionally, added aclone
method to theBase Camera
class to copy cameras. - Added overloading for
zoomOutToFit
andcalcPosition
methods that takes an array ofSimpleMapObject
map objects instead of geometries. - Added
TrafficRouter.findBriefRouteInfos
method for quickly getting basic information about routes (travel time, length, etc.) without building them. - Added route search for scooters. To enable it, define
ScooterRouteSearchOptions
forTrafficRouter.findRoute
. - Added information about altitude levels on the route:
Route.altitudes
. - Added information about restricted areas on the route:
Route.truckRestrictedAreas
,Route.vehicleRestrictedAreas
. - Enabled cutting out the passed distance from both ends of the route:
RouteMapObject.passedDistanceVisualization
. - Added new
RouteMapObject.replaceAllObjects
method to create several displayed routes simultaneously. - Enabled configuration of bubble display on the route:
RouteMapObject.calloutLabelFlags
,RouteMapObject.calloutLabelDisplayMode
. - Added
RouteMapObject.permanentDisplayFlags
to disable hiding of certain elements of a route when it cuts out. - Added a new
NavigationFollowController
class to control how a map follows the geolocation marker in the navigator. - Enabled getting a route bubble using
Map.getRenderedObject
. The returned object is of typeRouteInfoCalloutMapObject
. - Improved
SmartSearchManager
performance: any exceptions inOnlineSearchManager
cause switching toOfflineSearchManager
. - Enabled defining IDs for request in WebAPI for On-premise keys.
- Updated the logo in the map copyright.
- Added a new
lastPosition
property inDefaultLocationSource
showing the last known user location. - Added
MapView.addObjectTappedCallback
,MapView.addObjectLongTouchCallback
,MapView.removeObjectTappedCallback
, andMapView.removeLongTouchCallback
methods to add or removeMapObjectTappedCallback
(processors of taps and long presses on a map).
βοΈ Breaking changes and backward compatibility
- Updated method signatures:
zoomOutToFit
now takes only camera and geometry;calcPosition
now takes new parameters (screen area, tilt, bearing) so that you do not need to preset a camera to calculate position.
- Removed the redundant
RoutePosition
class. UseRoutePoint
instead. - Removed
Model.cameraProgressChannel
. Use theCameraNotifier
instead. - Changed the type of
Traffic.durations
fromSecondsRouteLongAttribute
toMillisecondsRouteAttribute
and increased value precision. - Changed the type of
Route.obstacles
toObstacleInfoRouteAttribute
and added additional information. - Enabled the
ZoomFollowController
builder to take theMap
parameter. - Removed the
showOsmCopyright
method from theMapView
class.
π Bug fixes
- Increased precision of displaying the remaining travel time in the navigator.
- Changed the behavior of
OfflineSearchManager
: in case of empty result, it returns an empry list without raising and exception. - Improved correctness of calculating points of difference between the primary route and a better one.
- Fixes locale definition in search queries. Now the region is defined based on the area of interest and the current user location.
- Enabled verification of adding customer markers with empty images.
- Fixed issues that caused a route selection panel and a better route disappear after the time out.
πΊ Map style updates
- Added the logic of displaying pedestrian routes (
Pedestrian route line
group) and route objects (Point A, Point B, Route joints, Intermediate route points in theDynamic objects
group) on floors. - Added the
Indoor instructions
group with navigation instructions inside buildings. - Hid the
Point A
layer in the navigation mode. - Disabled display of
Region border
andRegions
layers. - Defined gradient colors of an inactive route line.
- Fixed the selector of paid parkings.
- Moved the
Intermediate route points
,Route joints
,Point A
, andPoint B
layers after theLocation precision radius
layer.
Migration from versions 4.x to 5.x
For all types of Mobile SDK:
- Updated method signatures:
zoomOutToFit
now takes only camera and geometry;calcPosition
now takes new parameters (screen area, tilt, bearing) so that you do not need to preset a camera to calculate the position.
- Enabled the
ZoomFollowController
builder to take theMap
parameter. - Removed the
showOsmCopyright
method from theMapView
class.
Additionally, for the full version:
- Removed the redundant
RoutePosition
class. UseRoutePoint
instead. - Removed
Model.cameraProgressChannel
. Use theCameraNotifier
instead. - Changed the type of
Traffic.durations
fromSecondsRouteLongAttribute
toMillisecondsRouteAttribute
and increased value precision. - Changed the type of
Route.obstacles
toObstacleInfoRouteAttribute
and added additional information.
v4.6.1
Release Date: January 11, 2023
π Fixes
- Fixed navigation failure if the data package misses voice instructions.
v4.6.0
Release Date: December 30, 2022
π Fixes
- Fixed issues with the
HttpOptions.timeout
setting, which previously did not change the timeout ofOnlineSearchManager
/SmartSearchManager
requests. - Disabled
OpenStreetMap
appearing in the copyright.
v4.5.0
Release Date: November 16, 2022
π New features
- Improved work of
SmartSearchManager
: now any exceptions inOnlineSearchManager
switch toOfflineSearchManager
. - Now it's possible to set identifier for On-Premise keys in WebAPI queries.
π Fixes
- In case of empty result
OfflineSearchManager
does not throw an exception, but returns an empty list.
v5.0.0-beta.4
Release Date: November 8, 2022
π New features
- Implemented methods
MapView.addObjectTappedCallback
,MapView.addObjectLongTappedCallback
,MapView.removeObjectTappedCallback
,MapView.removeLongTappedCallback
to add and removeMapObjectTappedCallback
- tap and long-tap map handlers.
π Fixes
- More correct calculation of divergence point between main route and better route.
- Fixed locale definition in search queries. Region is now determined via area of interest or the user's current location.
v5.0.0-beta.3
Release Date: October 31, 2022
π New Features
- Added
lastPosition
property toDefaultLocationSource
- last known user location.
π Fixes
- Fixed an issue where a route would better disappear along with the route selection panel after a timeout.
v4.4.1
Release Date: October 31, 2022
π Fixes
- Fixed an issue where the route would better disappear along with the route selection panel after a timeout.
v5.0.0-beta.2
Release Date: October 13, 2022
π New features
- Updated the company logo in the copyright on the map.
v4.4.0
Release Date: October 13, 2022
π New features
- Updated the company logo in the copywriter on the map.
v2.8.2
Release Date: October 13, 2022
π New features
- Updated the company logo in the copywriter on the map.
v5.0.0-beta.1
Release Date: September 29, 2022
π New features
- Added ability to search and display pedestrian routes in buildings with floor plans.
- When searching,
PedestrianRouteSearchOptions.useIndoor
must be enabled (enabled by default). - The route in the building is displayed as a dashed line on the active floor, and when
RouteMapObjectDisplayFlag.INACTIVE_FLOORS
is enabled, it is displayed on all floors. - Icons with instructions are displayed on transitions between floors, their visibility is controlled by
RouteMapObjectDisplayFlag.INDOOR_INSTRUCTIONS
. - Get information about the floors the route passes through with
Route.levels
.
- When searching,
- Added pedestrian navigation in a building (the feature is experimental and will be finalized). Enabled when route is built considering floors (with flag
PedestrianRouteSearchOptions.useIndoor
) when entering building. Navigator's UI is changed - floor toggle control is displayed with marking which floors the route goes through, destination point's floor number is displayed in the bottom pane. - Added a method of getting basic information about routes (travel time, length, etc.) quickly without constructing them -
TrafficRouter.findBriefRouteInfos
. - Added fare search on scooters. To do this, set
ScooterRouteSearchOptions
inTrafficRouter.findRoute
. - Added information about altitudes on the route -
Route.altitudes
. - Added information about prohibited routes -
Route.truckRestrictedAreas
,Route.vehicleRestrictedAreas
. - Added ability to "eat" route from either end -
RouteMapObject.passedDistanceVisualization
. - Added method for simultaneous setting multiple routes
RouteMapObject.replaceAllObjects
. - Added settings for displaying callouts on the route
RouteMapObject.calloutLabelFlags
,RouteMapObject.calloutLabelDisplayMode
. - Ability to not hide some elements of the route as it "eats" -
RouteMapObject.permanentDisplayFlags
. - Added class to control map tracking for geoposition marker in navigator -
NavigationFollowController
. - Added ability to get route callout through
Map.getRenderedObject
, the returned object has typeRouteInfoCalloutMapObject
.
π Fixes
- Increased accuracy of displaying remaining travel time in navigator.
βοΈ Changes affecting backward compatibility
- Removed
RoutePosition
, a redundant class, and usedRoutePoint
instead. - Removed
Model.cameraProgressChannel
, you must use classCameraNotifier
instead. Traffic.durations
is now of typeMillisecondsRouteAttribute
instead ofSecondsRouteLongAttribute
and more accurate values.- The
Route.obstacles
now has the typeObstacleInfoRouteAttribute
and contains additional information besides the obstacle type. - The constructor
ZoomFollowController
now takes theMap
parameter.
πΊ Changes in map styles
- Added floor display logic for the pedestrian route (Pedestrian route line group) and objects on the route (Point A, Point B, Route joints, Intermediate route points in the Dynamic objects group).
- Added building navigation instructions - group Indoor instructions.
v4.3.0
Release Date: August 26, 2022
π New features
- Ability to set the font of the marker labels by specifying
TextStyle.fontName
- font name from the style editor. - New enum value
CameraState.FOLLOW_POSITION
- camera is in position tracking mode.
π Fixes
- Optimized offline fare search - do not load unnecessary region data.
- Fixed camera jerks during navigation at close maneuvers.
- Fixed wiping of a route when navigation is restarted.
- Fixed the crash when deleting the traffic jam source.
- Fixed display of the navigator's maneuvers when driving on the left side of the road.
- Improved operation of
MyLocationControl
- zooming in to geoposition, switching between three tracking modes, displaying current mode. - Reduced number of network requests for data on traffic jams when moving the map quickly.
- Timeout errors when downloading a traffic jam score are not logged as an error.
- Fixed better route display in navigator in case animations are disabled on the device.
v4.2.0
Release Date: August 4, 2022
π New features
- The geoposition source that can be used by default is
DefaultLocationSource
. To do this, its instance must be passed toregisterPlatformLocationSource
.
π Fixes
- Fixed an exception in
Map.visibleArea
. - Localization of inscriptions on the map now uses all system-defined languages.
- Localization of road event captions.
- Fixed route rebuilding during navigation.
- Changed the default value of the
radius
parameter inMap.getRenderedObjects
.
v4.1.0
Release Date: July 15, 2022
π Fixes
- Fixed flickering of traffic jams when zooming the map.
- Fixed display of stops and connection points on routes.
- Fixed map update when locale is changed.
DirectoryObject.markerPosition.elevation
can now have a non-zero elevation value.- Increased timeout of network fare search queries (the previous one was insufficient for long-distance routes).
- Now it is not necessary to set
deactivation_time
in key if offline features are not used. - Fixed a crash when checking for intersections of geometries using the
Geometry.intersects
method. - Fixed a crash when clicking in the logo on the map when there was no browser in the system.
- Fixed potential crashes when running the map.
βοΈ Changes affecting backward compatibility
- The enum value of
RouteMapObjectDisplayFlag.TRANPORT_CONNECTION_POINTS
has been renamed toTRANSPORT_CONNECTION_POINTS
- corrected a typo.
Migration from v2.x
For all types of Mobile SDK:
- You need to contact 2GIS technical support to get a new key to use MobileSDK. It is mandatory to specify the
appId
of the application for which the key will be created. The received key filedgissdk.key
must be added toassets
. - The
ApiKeys
structure has been removed. The corresponding parameter inDGis.initialize
has also been removed. - Update styles.
- Renamed the
DirectoryObjectId
class toDgisObjectId
. - Removed
serialize
,deserialize
functions forCameraPosition
instead they should use new serialization mechanism -PackedMapState
. - Removed methods
SearchQueryBuilder.setLocation
andSuggestQueryBuilder.setLocation
- the value is automatically taken from the geoposition source. - Removed method
PackedSearchQuery.location
. - Removed
SearchResultMarkerObject
andSearchResultMarkerSource
for generating search result tokens due to lack of ability to dynamically add or remove objects. As an alternative, the user is offered to implement token generation himself or use clustering. - When creating
MyLocationMapObjectSource
by defaultSmoothMyLocationController
is used instead ofRawMyLocationController
.
Additionally for full version:
- Removed lists with route information in
RouteInfo
-cameras
,instructions
,laneSigns
etc. and indexes of current items -Model.cameraIndexChannel
,Model.instructionIndexChannel
. Instead the information should be obtained directly from the route and the current position, for example, get the nearest camera -Model.route.route.cameras.findNearForward(position)
. - Renamed the route search parameters:
BicycleRouteSearchOptions.avoidUnderpasses
->avoidUnderpassesAndOverpasses
CarRouteSearchOptions.avoidFerry
->avoidFerries
TruckRouteSearchOptions actualWeight
,maxPermissibleWeight
->actualMass
,maxPermittedMass
- The enum value
RoadType.ROAD
is divided into subtypesRoadType.HIGHWAY
,RoadType.FEDERAL_ROAD
etc. - The
VoiceSelector.setVoice
method is replaced by thevoice
property. - Removed
Model.durationChannel
,Model.routeDurationChannel
, insteadModel.dynamicRouteInfo.traffic.durations.calculateDuration(routePoint)
. - Changed the set of enum
RoadSurface
values. - Removed
Model.navigationActiveChannel
,NavigationManager.uiSettings
, instead a new classActivityTracker
is used to get navigator activity.
v2.8.1
Release Date: July 13, 2022
π Fixes
- Fixed crash when checking for intersecting geometries with
Geometry.intersects
method. - Fixed crash when clicking in the logo on the map when there was no browser in the system.
- Fixed potential crashes when running the map.
v4.0.0
Release Date: June 17, 2022
π New Features
- Hybrid mode of operation.
- Added ability to download data for map, guidebook and fare finder operation, which will be used in the future when there is no internet connection. The
TerritoryManager
is used to download data about territories and get information about them. - The map works in hybrid mode by default - it simultaneously uses the sources created through
DGisSource.createOnlineDgisSource
andDGisSource.createOfflineDgisSource
. This can be changed by specifying when creatingMapOptions.sources
, for example, to use online only or offline only. - Hybrid directory search engine -
SearchManager.createSmartManager
(but there are also separatecreateOnlineManager
andcreateOfflineManager
). - The fare search (
TrafficRouter
) is always hybrid - it uses online/offline data depending on its availability. - With
TerritoriesAlongRouteProvider
you can get a list of areas the route passes through.
- Added ability to download data for map, guidebook and fare finder operation, which will be used in the future when there is no internet connection. The
- Display of floor plans.
- Occurs automatically when the map approaches large buildings (shopping malls, airports, etc.).
- To get information about the floor plans and switch them, serves `IndoorManager'.
- There is a ready-made UI controller for floor management -
IndoorControl
. - Dynamic objects (
SimpleMapObject
) can be placed on a specific floor plan using the parameterlevelId
.
- Display pop-up tooltips with lanes over the navigator's route.
- By default,
RouteMapObjectDisplayFlag.LANES_BUBBLES
is enabled. - Cue positions on the route can be obtained with
RouteMapObject.lanesCalloutPositions
.
- By default,
- Information about events and traffic jams on the route in the navigator -
Model.dynamicRouteInfo
. To set its updating parameters, useNavigationManager.dynamicRouteInfoSettings
. - To set the parameters of the route display in the navigator, use
NavigationManager.routeMapSettings
. - Automatic switch to Free Roam mode when leaving the route.
- Added route search settings -
NavigationManager.betterRouteProviderSettings
. - Added fields with lane sign boundaries -
RouteLaneSign.signStartPoint
,signPoint
,signEndPoint
. - Added option "avoid stairs" on pedestrian routes -
PedestrianRouteSearchOptions.avoidStairways
. - Possibility to set timeout for HTTP requests -
HttpOptions.timeout
. - Changed logic of work with keys. In
assets
of the application must be added filedgissdk.key
, which contains information about the key. - New design of the UI navigator
NavigationView
together with all the controls. The design now coincides with the new navigator of the 2GIS application. - In addition to the updated design of controls in the new navigator:
- The ability to set the color schemes of all the controls has appeared.
- Defining callback function for the trip completion button. If the callback is not set, the button will not be displayed in the bottom pop-up bar.
- By default, the display of lane callouts is enabled.
- New
AddRoadEventControls
controller to add road events.
- For bicycle routes, bicycle-specific attributes are added, such as:
Route.badRoads
- whether the road is bad.ExtraInstructionInfo.bicycleCrossroad
- bicycle instructionsBicycleInstructionCrossroad
,BicycleInstructionCrossroadManeuver
,BicycleInstructionCrossroadManeuverDirection
,BicycleInstructionCrossroadLandmark
.
- By default, the
Free roam
caching of tiles in the route mode is enabled. UseFreeRoamSettings.onRoutePrefetchLength
,FreeRoamSettings.onRoutePrefetchRadiusMeters
andFreeRoamSettings.cachePrefetchRadiusMeters
to set caching. - Added flag
TruckRouteSearchOptions.fallbackOnCar
, which allows to search car route if truck route cannot be found. - Exit signs appeared in lane callouts.
- Added information about exits in
DirectoryObject
-EntranceInfo
. - Modified
SearchManager.suggest
to display entrances and apartments. - Modified
SearchManager.searchByDirectoryObjectId
andSearchManager.searchById
to search the entryway by ID. - Added ability to customize the display of active and inactive routes through
RouteEditorSource.activeDisplayFlags
andRouteEditorSource.inactiveDisplayFlags
. - Added
RouteMapObjectDisplayFlag.BUBBLES
flag to control the visibility of callouts on routes. - Added priorities for network requests so that higher-priority data is loaded first.
- Added
Map.dataLoadingState
channel to track map loading state. - Ability to bind UI View to a position on the map -
SnapToMapLayout
. - Processing of clicks on building entrances. Added field
DgisObjectId.entranceId
- entrance identifier. It is populated for entrances received throughMap.getRenderedObjects
. Support for inputs in the navigator will be added in future releases. - The navigator control that displays traffic jams on the route is
TrafficLineControl
. - Route overview in the navigator. Enabled by selecting appropriate Dashboard action or clicking on
TrafficLineControl
.
π Fixes
- Free Roam data caching. Caching settings can be configured using
NavigationManager.freeRoamSettings
. - Fixed an issue where a camera voiced once on a route was no longer voiced when passing through it again.
- Fixed search in offline and hybrid modes.
- Optimized traffic jam update.
- Disabled display of floor plans in navigation mode.
- Optimized sending statistics in navigation mode.
- Optimized logic of route re-request.
- Fixed an issue where the constructed route was left on the map when the trip was completed.
- Fixed display of the traffic jams during tracking.
- Resized Mobile SDK map assembly.
- Fixed the order of routes drawing.
πΊ Changes in map styles
- Displaying of floor plans.
- There are new catalogs with layers: Floor Squares, Organization Squares, Floor Walls, Organization Anchors, Floor Attractions, Floor Captions.
- All layers in the "3D Houses" catalog as well as the "3D Models" layer have changed the data selection condition.
- It is required to reload the styles from the editor in order for the lane cues to appear.
- The names of the layers have been translated into English.
- Layer "Driveways above houses" became interactive - available for retrieval through
Map.getRenderedObjects
. - Removed layers "Traffic circled level [-3..3]".
- Changed line width of "Traffic jams, background", "Traffic jams fill color level [-3..3]".
- Added arrows parameters in "Car route line" folder for layers "Maneuver arrows, large scale, tracking mode", "Maneuver arrows, fine scale, tracking mode".
- The text color, halo color and halo size were changed in "Traffic alerts along the route" and "Traffic alerts along the route, tracking mode" layers for "Small gates", "Stairs up", "End of pedestrian underpass", "Beginning of pedestrian underpass", "Stairs down", "Boom gate", "Speed hump".
- Changes for new navigator: colors/sizes of traffic jams, route, maneuvers, new arrow model.
- Support for placing
SimpleMapObject
objects on floors.
v2.8.0
Release Date: June 9, 2022
π New features
- Property
MapObjectManager.isVisible
- enable/disable display of all objects simultaneously.
π Fixes
- Fixed potential blocking of UI stream for a long time when working with the network.
v2.7.2
Release Date: May 30, 2022
π Fixes
- Fixed bug downloading network certificates on some devices.
v4.0.0-beta.2
Release Date: May 25, 2022
π New features
- CapObjectManager.isVisible` property - enable/disable displaying of all objects simultaneously.
- Ability to bind UI View to a position on the map -
SnapToMapLayout
. - Processing of clicks on building entrances. Added the field
DgisObjectId.entranceId
- entrance identifier. It is populated for entrances received throughMap.getRenderedObjects
. Support for inputs in the navigator will be added in future releases. - The navigator control that displays traffic jams on the route is
TrafficLineControl
. - Route overview in the navigator. Enabled by selecting appropriate Dashboard action or clicking on
TrafficLineControl
.
π Fixes
- Fixed display of traffic jams during tracking.
βοΈ Changes affecting backward compatibility
- Removed
Model.durationChannel
,Model.routeDurationChannel
, insteadModel.dynamicRouteInfo.traffic.durations.calculateDuration(routePoint)
. - Changed the set of enum
RoadSurface
values. - Removed
Model.navigationActiveChannel
,NavigationManager.uiSettings
, instead a new classActivityTracker
is used to get navigator activity.
πΊ Changes in map styles
- Layer names have been translated into English.
- The "Driveways above houses" layer is now interactive - available for retrieval via
Map.getRenderedObjects
. - Removed layers "Traffic circled level [-3..3]".
- Changed line width of "Traffic jams, background", "Traffic jams fill color level [-3..3]".
- Added arrows parameters in "Car route line" folder for layers "Maneuver arrows, large scale, tracking mode", "Maneuver arrows, fine scale, tracking mode".
- The text color, halo color and halo size were changed in the "Traffic alerts along the route" and "Traffic alerts along the route, tracking mode" catalogs for "Small gates", "Stairs up", "End of pedestrian underpass", "Beginning of pedestrian underpass", "Stairs down", "Boom gate", "Speed hump" layers in the night theme.
v2.7.1
Release Date: May 24, 2022
π Fixes
- Static map content is now loaded with higher priority than dynamic content.
- Added network certificate load logging.
v2.7.0
Release Date: May 18, 2022
π New features
- Added the ability to set the
SimpleObject
rendering layer when creating aMapObjectManager
. Added parameter -layerId
- ID of the layer of the new typeDynamic Object
. When it is set, objects are placed on this layer, which allows you to set their order relative to other layers.
π Fixes
- Fixed map freezing at high zoom and tilt angle values.
- Fixed an issue where loading the map in hybrid mode would fill everything with a water polygon for a while.
- Fixed an issue where the thickness of the added
Polygon
object would change at different zooms. - Optimized plug updates - they are now cached based on style zoom.
- Fixed an issue where using
MapView
in the xml-version would stop displayingPreview
.
v4.0.0-beta.1
Release Date: May 4, 2022
π New features
- Changed the logic for working with keys. You have to add a file
dgissdk.key
toassets
of the application, which contains information about the key. - New UI design of the
NavigationView
navigator along with all the controls. The design now coincides with the new navigator of the 2GIS application. - In addition to the updated design of controls in the new navigator:
- The ability to set the color schemes of all the controls has appeared.
- Defining callback function for the trip completion button. If the callback is not set, the button will not be displayed in the bottom pop-up bar.
- By default, the display of lane callouts is enabled.
- New
AddRoadEventControls
controller to add road events.
- Added ability to set the rendering layer
SimpleObject
when creating theMapObjectManager
. Added parameter -layerId
- the ID of the layer of the newDynamic Object
type. When it is set, objects are placed on this layer, which allows you to set their order relative to other layers. - Bicycle routes add attributes specific to them, such as:
Route.badRoads
- whether the road section is bad.ExtraInstructionInfo.bicycleCrossroad
- bicycle instructionsBicycleInstructionCrossroad
,BicycleInstructionCrossroadManeuver
,BicycleInstructionCrossroadManeuverDirection
,BicycleInstructionCrossroadLandmark
.
- By default, the
Free roam
caching of tiles in the route mode is enabled. UseFreeRoamSettings.onRoutePrefetchLength
,FreeRoamSettings.onRoutePrefetchRadiusMeters
andFreeRoamSettings.cachePrefetchRadiusMeters
to set caching. - Added flag
TruckRouteSearchOptions.fallbackOnCar
, which allows to search truck route if truck route cannot be found. - New field is sent in the events of navigator's statistics.
π Fixes
- Faster addition of complex polygons to the map.
- Fixed an issue where a camera voiced once on a route was no longer voiced when passing through it again.
- Fixed search in offline and hybrid modes.
- Optimized traffic jam update.
- Disabled display of floor plans in navigation mode.
- Optimized sending statistics in navigation mode.
- Optimized logic of route re-request.
- Fixed problem where built route was left on map when trip was completed.
- Processing of change of network connection.
- Fixed
Channel
operation - now values cannot come after connection is closed. - Fixed crashing when destroying the map.
βοΈ Changes affecting backward compatibility
- The
ApiKeys
structure has been removed. The corresponding parameter inDGis.initialize
has also been removed. You must now add thedgissdk.key
file to theassets
of the application. - Removed methods
SearchQueryBuilder.setLocation
andSuggestQueryBuilder.setLocation
- value is automatically taken from geoposition source. - Removed method
PackedSearchQuery.location
. - Removed
SearchResultMarkerObject
andSearchResultMarkerSource
for generating search result tokens due to lack of ability to dynamically add or remove objects. As an alternative, the user is offered to implement token generation himself or use clustering. - When creating
MyLocationMapObjectSource
by defaultSmoothMyLocationController
is used instead ofRawMyLocationController
. - The
PersonalDataCollectionConsent
becomes the last parameter in theDGis.initialize
method.
πΊ Changes in map styles
- Changes for the new navigator: colors/size of traffic jams, route, maneuvers, new arrow model.
- Support for
SimpleMapObject
placement on floors.
v2.6.0
Release Date: April 19, 2022
π New features
- Sending a new passedDistance field in navigator statistics events.
π Fixes
- Faster addition of complex polygons to the map.
- Fixed update of traffic jams on the route.
- Caching of traffic events.
- Fixed crash when the map crashes on Android 5.
- Improved ETA update algorithm on route.
- Handled change of network connection.
- Fixed
Channel
operation - now values can't come after connection is closed.
βοΈ Changes affecting backward compatibility
- The
SearchQueryBuilder.setLocation
andSuggestQueryBuilder.setLocation
methods are marked as deprecated - the value is automatically taken from the geoposition source.
v4.0.0-alpha.1
Release Date: April 4, 2022
π New features
- Hybrid mode of operation.
- Added ability to download data for map, guidebook and fare finder operation, which will be used in the future when there is no internet connection. The
TerritoryManager
is used to download data about territories and get information about them. - The map works in hybrid mode by default - it simultaneously uses the sources created through
DGisSource.createOnlineDgisSource
andDGisSource.createOfflineDgisSource
. This can be changed by specifying when creatingMapOptions.sources
, for example, to use online only or offline only. - Hybrid directory search engine -
SearchManager.createSmartManager
(but there are also separatecreateOnlineManager
andcreateOfflineManager
). - The fare search (
TrafficRouter
) is always hybrid - it uses online/offline data depending on its availability. - With
TerritoriesAlongRouteProvider
you can get a list of areas the route passes through.
- Added ability to download data for map, guidebook and fare finder operation, which will be used in the future when there is no internet connection. The
- Display of floor plans.
- Occurs automatically when the map approaches large buildings (shopping malls, airports, etc.).
- To get information about the floor plans and switch them, serves `IndoorManager'.
- There is a ready-made UI controller for floor management -
IndoorControl
. - Dynamic objects (
SimpleMapObject
) can be placed on a specific floor plan using the parameterlevelId
.
- Display pop-up tooltips with a bar above the navigator's route.
- Off by default. You can turn it on by setting
RouteMapObjectDisplayFlag.LANES_BUBBLES
inRouteMapObject.displayFlags
,RouteMapSettings.onRouteDisplayFlags
orRouteMapSettings.freeRoamDisplayFlags
. - Cue positions on the route can be obtained with
RouteMapObject.lanesCalloutPositions
.
- Off by default. You can turn it on by setting
- Information about events and traffic jams on the route in the navigator -
Model.dynamicRouteInfo
. To set its updating parameters, useNavigationManager.dynamicRouteInfoSettings
. - To set the parameters of the route display in the navigator, use
NavigationManager.routeMapSettings
. - Automatic switch to Free Roam mode when leaving the route.
- Added route search settings -
NavigationManager.betterRouteProviderSettings
. - Added fields with lane sign boundaries -
RouteLaneSign.signStartPoint
,signPoint
,signEndPoint
. - Added option "avoid stairs" on pedestrian routes -
PedestrianRouteSearchOptions.avoidStairways
. - Possibility to set timeout for HTTP requests -
HttpOptions.timeout
.
π Fixes
- Fixed update of traffic jams on your route.
- Free Roam data caching. You can configure the caching settings with
NavigationManager.freeRoamSettings
. - Traffic event caching.
- Fixed crash on map crash on Android 5.
βοΈ Changes affecting backward compatibility
Map version:
- The
directory.DirectoryObjectId
class has been renamed toDgisObjectId
. - Instead of
MapOptions.sources
, nowMapOptions.sources
is a list of sources. - Removed
serialize
,deserialize
functions forCameraPosition
. UsePackedMapState
(a new serialization mechanism) instead.
Full version:
- Removed lists with route information in
RouteInfo
-cameras
,instructions
,laneSigns
etc. and current element indices -Model.cameraIndexChannel
,Model.instructionIndexChannel
. Instead the information should be obtained directly from the route and the current position, for example, get the nearest camera -Model.route.route.cameras.findNearForward(position)
. - Renamed the route search parameters:
BicycleRouteSearchOptions.avoidUnderpasses
->avoidUnderpassesAndOverpasses
.CarRouteSearchOptions.avoidFerry
->avoidFerries
.TruckRouteSearchOptions actualWeight
,maxPermissibleWeight
->actualMass
,maxPermittedMass
.
- The enum
RoadType.ROAD
value is divided into subtypesRoadType.HIGHWAY
,RoadType.FEDERAL_ROAD
etc. - The method
VoiceSelector.setVoice
is replaced by the propertyvoice
.
πΊ Changes in map styles
- Displaying floor plans.
- There are new catalogs with layers: "Floor Plans", "Organization Plazas", "Floor Walls", "Organization Anchors", "Floor Sights", and "Floor Captions".
- All layers in the "3D Houses" catalog as well as the "3D Models" layer have changed the data selection condition.
- Requires the styles to be reloaded from the editor in order for the lane cues to appear.
v2.5.0
Release Date: March 23, 2022
π New features
- Event in statistics about navigator settings change during navigation.
- Event in navigator statistics about leaving a route and returning to it.
π Fixes
- Fixed
Map.getRenderedObjects
operation with transparent polygons. - Fixed update of traffic data in navigator UI model (
RouteInfo.trafficRoute.traffic
). - Corrected order of maneuver arrows overlapping in navigator.
- Bicycle routes now follow the sidewalk instead of the roadway.
- Handled null identifier in
SearchManager.searchById
,searchByDirectoryObjectId
methods.
πΊ Changes in map styles
List of changes
"Ocean" For the day and night theme, the font size is at [z2:9.15 ... z4:12.5]. The labeling indents for the text in the night theme changed from 10.1 to 20, now as in the day theme. "Large Sea" For the daytime and nighttime theme, the font size is [z3:9.15 ... z5:10.85] "Small Sea and Large Lake" For the daytime and nighttime theme, the font size is at [z3.5:9.5 ... z6:11.65]. The labeling indents for text in the daytime theme changed from 40.1 to 20, now as in the nighttime theme. "Small Lake" For the daytime and nighttime theme, the font size has been changed to 9.15. text indents for the night theme, changed from 20 to 0, the same as for the day theme. "2GIS Countries" For daytime and nighttime themes, font size to [z2:10 ... z5:15]. For the daytime and nighttime theme, the indentation of the labeling has been changed to 5. "Large Countries" For the daytime and nighttime theme, the font size is changed to [z2:10 ... z5:15]. "Medium Countries" For the day and night theme, the font size is changed to [z2:10 ... z4:12.5]. For the daytime and nighttime theme, the indentation of the labeling is changed to 10. "Small Countries" For the day and night theme, the font size has been changed to 10.85. The indents for the day and night topics were changed to 5. "Regions" For the daytime and nighttime theme, the font size has been changed to [z6:10.85 ... z9:16.65]. "Mid-Cities" For the daytime and nighttime theme, the font size is [z6:10 ... z9:13.75]. "Small Cities" For day and night theme, the font size is [z6:9.15 ... z9:12.9]. For the night theme, the sublayer filter has been changed to "City_small", now as in the day theme. For the night and day theme, the object_class filter has been changed to "universe_city". "Regional Centers" For the daytime and nighttime theme, the font size has been changed to [z4.5:9.15 ... z9:13.75]. "2GIS Small Cities" For daytime and nighttime theme, the font size is at [z6:10 ... z9:13.75]. "Major Cities" For the daytime and nighttime theme, the font size is [z5:10 ... z9:15]. For the day and night theme, changed the icon size to 5.85. For the night theme the indentation of the labeling has been changed by 20. "Middle Cities 2GIS" For day and night themes, the font size has been changed to [z4:8.35 ... z9:15]. Icon size changed to 5.85 for daytime and nighttime theme. "2GIS Major Cities" For the day and night theme changed the icon size to 5.85. For the day and night themes changed the font size to [z3:8.35 ... z9:15]. For day and night theme, changed the indentation of the labeling to 5. For the night theme changed sample filters: sublayer = city_2gis_big, objectClass = universe_city_2gis, universe_city_2gis_rc, now as in the day theme. "Small Capitals" For the day and night themes changed the icon size to 7.5. For day and night themes changed the font size to [z6:11.65 ... z11:18.35]. For day theme changed sampling filters, brought in line with night theme. For the day and night themes changed the indentation of the labeling to 4. "Capitals" For the night theme, changed the sampling filters to match the day theme. For the day and night themes changed the font sizes to [z3:9.15 ... z11:18.35]. For the daytime and nighttime theme changed the icon size to 7.5. "2GIS Capitals" For the daytime and nighttime theme, the font size has been changed to [z3:9.15 ... z11:18.35]. For the day and night theme changed the icon size to 7.5. For day and night themes the indentation of the labeling has been changed to 4. "Arteries" For the night theme, the base for the width interpolation logarithm has been changed to 2, now as in the day theme. "Walkways" For the night theme, the width has been changed to [z16.5:1.1 ... z19:3], also the interpolation has been changed to linear, now as in the day theme. For night and day theme, filter by db_sublayer changed, "Pedestrian_road_park_footpath", "Pedestrian_road_park_path" and "Pedestrian_street" added. "Intra-block arrows" For the day theme, changed the indentation from the edges of the line to place the arrows to 2, now as in the night theme. For the night theme, changed the sublayer filter to Oneway_internal_road. "Arrows Other" For the day theme, changed the indent from the edges of the line to place arrows to 2, now as in the night theme. For the night theme, the sublayer filter has been adjusted to match the day theme. "Arrows of highways" For the day theme, the indent from the edges of the line to place arrows has been changed to 2, now as in the night theme. "Traffic jam backing", "Traffic jam fill level -3", "Traffic jam fill level -2", "Traffic jam fill level -1", "Traffic jam fill level 0", "Traffic jam fill level 1", "Traffic jam fill level 2", "Traffic jam fill level 3" The line shift animation type was changed for the night theme, now it is linear like in the day theme. "Water Transport" For the night theme, the stroke length has been changed to [z14:2.3 ... z20:4.1], now as in the day theme. "Tram Dotted" For the night theme, the stroke length has been changed to [z15:8 ... z19:40.1], now as in the day theme. "Entrances under houses" For the night theme, the icon size has been changed to [z17:6 ... z18.5:11], now as in the day theme. "Entrances above houses" For the night theme, change the icon size to [z17:6 ... z18.5:11], now as in the day theme. "Route line on subway backing", "Route line on subway outline" In daytime theme s_dvg_public_pedestrianan_route_mobile removed from filters. "Lookout", "Natural Monument", "Waterfall", "Helipad", "Beach", "Ski Area", "Information", "Garden", "Bridge", "Boat Station", "Skate Park", "Lifeguard", "Changing Room", "Water", "Rink", "Winter Equipment Rental", "Trees", "Attractions", "Ruins", "Paintball", "Stage", "Dance Floor", "Shower Booth", "Christmas Tree Bazaar", "Enclosure", "Homestead", "Crossing", "Monument", "Decorative Structure", "Gazebo", "Bookcrossing", "Graffiti", "Fountain", "Dog Walking Place", "Shooting Range", "Equipment Rental", "Playground", "Karting", "Toilet", "Sports Equipment" For the day theme, the icon size has been changed to [z14:12 ... z16:14], now as in the night theme. "Viewpoint", "Natural Monument", "Waterfall", "Park", "Beach" Font size changed to 16. "Park" For the night theme, the icon size has been changed to [z14:18 ... z18:24], now as in the day theme. "Water" (POI) In the daytime theme, added "springs" to the filters in the objectClass. "Shooting gallery" In the night theme, replaced the icon with "poi_shootingrange", now as in the day theme. "Sports equipment" For the night and day theme changed the indentation of the labeling to 5. For the day theme, the icon size has been changed to [z14:12 ... z16:14], now as in the night theme. "Other captions" For the night theme, the sublayer filter has been changed to "Other_caption_point", now as in the day theme. For night theme changed minimum zoom to 15, now as in day theme. "Other captions along the line" For the night and day theme, changed the indentation from the edges of the line to place the caption to 5. For the night and day theme, changed the distance between caption duplicates along the line to 1000. For the night and day theme, changed the additional indentation of the labeling along the edges by 5. For the night and day theme, the font size has been changed to [z15.5:10 ... z18:14]. "Special captions along the line" For the daytime theme, the Noto_Sans font is explicitly specified, now as in the nighttime theme. For the night and day theme, the indentation from the edges of the line to place the caption has been changed to 0. For the night and day theme, the additional indentation of the labeling on the edges has been changed to 8. For the night theme, changed the distance between duplicate lettering along the line to 200, as in the day theme. "River Captions" For the night theme, changed the indentation from the edges of the line to place the caption to 0, now as in the day theme. For night and day theme, textDuplicationSpacing changed to [z12:500 ... z18:1000]. "House numbers" For the night theme, the minimum zoom has been changed to 15.3, now as in the day theme. "ATM" For night theme changed filter for sublayer, now "Low_zoom_poi_navigator", like in day theme. "Clothing Shop", "Beauty Shop", "Coffee Shop", "Go-Karting", "Fitness Club", "Bar", "Chapel", "Aviation Club", "Car Service", "Shoe Shop" For the night theme, the sublayer filter has been changed to "Low_zoom_poi", as in the day theme. "Kindergarten", "Ticket Office", "Tennis Club", "Swimming Pool", "Rink", "Post Office", "Education", "Library", "Church", "Synagogue", "Datsan", "Mosque", "Medical Facility", "Sanatorium", "Hotel" For the night theme, the sublayer filter has been changed, now "Medium_zoom_poi", as in the day theme. "Mall," "Administration," "Pharmacy," "Police" For the night theme, the sublayer filter has been changed to "Medium_zoom_poi_navigator" as in the day theme. For night and day theme changed icon size to [z14:18 ... z18:24]. "Theater," "Cinema," "Golf Club," "Hippodrome," "Stadium," "Business Center" For the night theme, changed the sublayer filter, now "High_zoom_poi", as in the day theme. "Shopping Mall," "Gas Station," "Charging Station" For the night theme, the sublayer filter has been changed to "High_zoom_poi_navigator" as in the day theme. "Airport" in directory "POI icons" for night theme changed fonts size to [z14.5:10.1 ... z18:12], now as in day theme. In the "Transport sights" directory for the night and day theme changed the minimum zoom to 7.5. "Railway station" in directory "POI icons" for night theme changed fonts size to [z14.5:10.1 ... z18:12], now as in day theme. In the "Transport Sights" catalog for the daytime theme changed to a minimum zoom of 7.5. "Bus Station" Changed filter object_class in "POI icons" catalog for the night theme, now "bus_station", like in the day theme. In the "Transport sights" catalog, the minimum zoom has been changed to 11 for the night and day theme. "Port" in directory "POI icons" for night theme changed the size of icons to [z14:18 ... z18:24], now as in the day theme. In the catalog "Transport sights" for the night and day theme changed the minimum zoom to 11. "Railroad stations dot" For the daytime theme, the icon size has been changed to 6, now as in the nighttime theme. "Chairlift" For the night theme, the icon has been changed to "chairlift", now as in the day theme. "Surface lift" For the night theme, the icon has been changed to "bugel", now as in the day theme. "Dark green" from the "Subway station icons" catalog Icons width was changed to 12 for the night theme. "MCD 1", "MCD 2" from the "Subway icons" catalog For the night theme minimal zoom is changed to 12, now as in the daytime theme. "MCSD 1", "MCSD 2" from the "Subway icons" catalog For the day theme, the width of the subway icons has been replaced by 22, now as in the night theme. "Turquoise", "Blue", "Yellow", "Green", "Brown", "Red", "Orange", "Gray", "Blue", "Dark Green", "Purple", "Gray-Blue", "MCC", "Pink" from the "Subway Icons" catalog Icons width was changed to 15 for Daytime theme. "Icons of subway exits" from the "Icons of subway exits" catalog For the night and day theme, the icon width has been changed to 15. "City captions with dots" For night and day theme replaced by [z6:11.5 ... z15:20] font size. For the night and day theme, the indentation of the labeling has been replaced by 16. "Main City Caption" for the night theme the font size has been changed to [z0:10.1 ... z11:22 ... z11.9:22 ... z12:24], now as in the day theme. for the night theme changed the indentation of the labeling to 30, now as in the day theme. "Camera of unknown destination", "Speed camera" and others in the "Traffic events on the route" and "Traffic events on the route in the maintenance mode" directories For the night theme, the priority of text and priority of icons for labeling have been changed to 160, now as in the day theme. "Camera of Unknown Destination" In the "Traffic events on route" directory, the text and icons priority for labeling have been changed to 160 for the daytime theme. "Speed camera_80" In the "Traffic events on the route" catalog for the daytime theme, the sublayer filter has been changed to "s_dvg_route_camera_80", now as in the night theme. "Speed camera" from the catalog "Traffic events on the route in the maintenance mode" The icon size for the night theme has been changed to 28, now it is the same as in the day theme. For the night theme, the condition for navigatorOn in the filter is now the same as for the day theme. "Speed camera_100" In the "Traffic events on route in maintenance mode" folder of the daytime theme changed the icon's anchor point to [0.4, 1], now it is the same as in the night theme. Changed the order of drawing traffic jams. Traffic jams are drawn before houses. In the night theme, the "Active underground pedestrian route line" layer (there are two of them) is renamed to "Active underground pedestrian route line". In the night theme, the "Active underground pedestrian route line copy" layer has been renamed to "Active pedestrian route line". In the night theme, the "Other line captions" layer has been renamed to "Other captions along the line". In the night theme, the "Special Line Captions" layer has been renamed to "Special Line Captions". The "Industrial areaa" layer in the night theme was renamed to "Industrial area". In the night theme the "Beginning and end of toll roads" layer was renamed to "Beginning and end of toll roads". Added "Bus Station" layer in Daytime and Nighttime themes. Layer "Shoe store" and "Cinema" in the daytime theme have changed the data sampling filter. The icon priority was changed to 160 for the "Speed camera" layer in the "Traffic events on route" directory in the daytime theme. Icon priority for the "Speed camera of unknown destination" layer in the "Traffic events on route in maintenance mode" catalog in the daytime theme was changed to 160. The icon size of the layer "Graffiti" in the night theme has been changed to z14:12 . z16:14. All layers in the directory "POI icons" in the night theme now have an icon size of z14:18 ... z18:24. The "Airport", "Railway station", "Bus station", "Port" layers in "POI icons" folder in night theme have rgba(255,255,255,0.5) stroke color now. The "Inactive auto route line" and "Inactive auto route line carpet pad" layers are now separated into a separate "Inactive auto route line" catalog. The "Speed camera" layer in the "Traffic events on route in maintenance mode" directory has been changed to icon priority 160. The maximum scale in the editor is a strict boundary. Since in Mobile SDK you can set z 20, and at some latitudes it corresponds to style z 20, objects with a maximum scale of 20 can in this situation hide. Because of that, you can now set the maximum scale more than 20 in the editor, and in the style templates for Mobile SDK all such layers are set to maximum scale 21. In night theme all layers in directory "POI icons" color of stroke was changed to rgba(0,0,0,0.19).
v2.4.2
Release Date: March 16, 2022
π Corrections
- Disabled
accessibility
in copyright control.
v2.4.1
Release Date: March 11, 2022
π Fixes
- Fixed update of traffic jams along the route.
- Fixed bug when sending fare finder statistics.
v2.4.0
Release Date: March 4, 2022
π New features
- Added warnings and errors to the log in case support for a particular MobileSDK version expires or has expired.
- Supported
CarRouteSearchOptions.avoidFerry
filter to prohibit ferrying. - When sending statistics, events are handled:
- Completion of alternative routes request
- Change of the index of the next intermediate route point
- Updates of dynamic route information
π Fixes
- Fixed a crash that could occur when destroying a map object.
- Fixed a bug where routes on public transportation had an invalid car boarding description when no car information was available.
- Calling
Camera.setPadding
andCamera.setPositionPoint
with theCameraPositionPointChangeBehaviour.KEEP_CAMERA
parameter now resets position tracking. - Fixed an issue with rendering some regions.
- Fixed a bug when sending statistics related to generating an event after reaching an endpoint.
- Now if you sent a request to find a new route, but returned to the current route before receiving it, it sends requests for a better route.
βοΈ Changes affecting backward compatibility
- The
TrafficRouter.findRoute
method now returns an empty list instead of throwing an exception if no routes are found.
v1.6.18
Release Date: February 25, 2022
π Fixes
- Fixed a crash that could occur when destroying a map object.
v2.3.2
Release Date: February 21, 2022
π Fixes
- Fixed sending of stats about navigation start.
v2.3.0
Release Date: February 10, 2022
π New features
- Smooth flight when geoposition tracking is activated -
CameraBehaviour.transitionType
(by default,TransitionType.SMOOTH
is enabled). - Ability to set settings that are not available through API (e.g. URLs of web services) - parameter
vendorConfig
inDGis.initialize
- JSON file with settings. The settings set is currently undocumented. - Automatic switch to the better route if the user continued on the route.
- Sending statistics on fare search and navigation performance.
- Text description of cars recommended for boarding -
PublicTransportInfo.boardingSuggest
. For example, "board the first carriage". - Displaying cars recommended for boarding in the route card (
PublicTransportCard
). - Information about the schedule of a traffic event -
RoadEvent.schedule
. - Display traffic event schedule in the event card (
RoadEventCard
). - Auxiliary methods
GeoPoint.isValid
,GeoRect.isValid
,GeoRect.contains
,GeoRect.intersects
,GeoRect.expand
. - Get bounding rectangle of geometry -
Geometry.bounds
,GeometryMapObject.bounds
,SimpleMapObject.bounds
. - Ability to get current navigator's voice -
VoiceSelector.voice
.
π Fixes
- Optimization of displaying traffic jams on the map.
- Optimization of route adding to the map.
- Sound volume setting (
SoundNotificationSettings.notificationVolume
) now only affects navigator, not system volume. - Fixed route detection better after leaving a route and going back.
- Fixed compass jitter.
- Removed erroneous notification about bad GPS signal when starting navigation simulation (
NavigationManager.startSimulation
). - Fixed bug in log when setting
MapView.setTouchEventsObserver
during gesture.
βοΈ Changes affecting backward compatibility
- The
accuracy
parameter inMagneticChangeListener.onValueChanged
is now of typefloat
and means the standard deviation of the angle.
v1.6.15
Release Date: January 24, 2022
π Fixes
- Added camera position logging, if incorrect position value is passed to
Camera.move
,Camera.position
andMapOptions.position
methods.
v1.6.14
Release Date: January 10, 2022
π Fixes
- Fixed crashes in
MagneticHeadingProvider
related to the system SIGABRT signal. - Fixed an issue where tiles would not load when AdGuard VPN was enabled.
- Fixed crashes when reading network status.
- Fixed logging bugs where map object is destroyed immediately after creation.
- Fixed crashes in network cache.
- Added request logging for network errors.
- Fixed errors in logs when processing map tiles.
- Fixed rare crashes during map creation in different threads.
- Fixed errors in logs when adding marker to the map.
v2.2.0
Release Date: December 29, 2021
π New features
- Save and restore route and navigator state -
PackedNavigationState
,TrafficRoute.fromNavigationState
. - Added property
PublicTransportTransfer.startPointName
- name of the start point of the route section. - Displaying numbers and colors of subway lines in the public transport card (
PublicTransportCard
).
π Fixes
- Fixed crash when changing map zoom settings in navigator (
NavigationManager.zoomFollowSettings
). - Fixed
PublicTransportInfo.color
for transport types other than metro. - Fixed text color in
SpeedInfoControl
in a dark theme. - Traffic data update period is limited to 30 seconds from the bottom.
βοΈ Changes affecting backward compatibility
- The
PublicTransportTransfer.waypointName
property has been renamed tofinishPointName
.
πΊ Map style changes
-
Changes to find public transportation fare.
- In the Walking Line directory, added layers "Inactive Underground Walking Line" (two layers with the same name), "Inactive Walking Line", "Active Underground Walking Line" (two layers), "Active Walking Line", removed layers "Underground Walking Line" (two layers) and "Walking Line".
- The Underground Walking Route Line, Inactive Underground Walking Route Line, Inactive Walking Route Line, Active Underground Walking Route Line, Active Walking Route Line layers were added, and the Underground Walking Route Line and Walking Route Line layers were deleted in the Maintained Walking Line catalog.
- Renamed the Maneuver Arrows Shallow Scale in Maintain Mode layer to Maneuver Arrows Shallow Scale in Maintain Mode.
- Added directory with layers "Route line on public transport".
-
The "Traffic", "Walking route line", "Walking route line in guided mode", and "Walking route line in auto" catalogs have been moved higher to keep the models and buildings from covering the routes. They are now above the 3D Model layer.
-
Arrow display has been corrected - for the Other Arrows, Highway Arrows layers, the object selection condition has been changed (select JSON to see the current condition and compare it with the condition in your styles).
-
For the layer "Yellow Line Subway Drop-off Stop in active state" leibeling has been disabled (in templates through adding new leibeling group, but it's easier to turn on the checkbox "Keep visible when overlaying on other objects").
-
The "Generalized Marker" layer has had the "search_marker_icon" labeling group added, so that it is not hidden by other objects.
-
Changed daytime and nighttime theme inconsistencies.
- In the daytime theme:
- Removed font at "Lookout," "Natural Monument," "Waterfall," "Park," and "Beach" layers.
- Minzoom was changed from 18 to 17 for "Playground" and "Sports equipment" layers.
- Layer "Garden", "Ski Center" minzoom changed from 12 to 14.
- The "Streetcar Dotted" layer has been changed from 16.5 to 15.5 minzoom to correspond to the "Streetcar" layer.
- The text display has been changed from 17 to 16 zoom on the "Speed Camera_100" layer.
- In the night theme:
- The "Rail/D Line" layer has had its maxzoom changed from 13.5 to 13 to match the "Rail/Dash Dot" layer.
- The "Stairs" and "Zebra" layers have had their minzoom changed from 16.5 to 16.
- All "Flat Houses" layers have been changed from 20 to 16 to avoid displaying them simultaneously with 3D houses.
- The "Gardens" and "Schools" layers in the "Flat Houses" catalog have changed their minzoom from 15 to 14.
- In the daytime theme:
-
The minzoom of the "Parking Area" layer was changed from 17.5 to 17. - Minzoom for the "Large 2GIS Cities" layer is changed from 4 to 3. - Minzoom has been changed from 6 to 4 for the "Medium 2GIS Cities" layer. - Minor cities" layer has minzoom changed from 7 to 6. - For the "Large Countries" and "2GIS Countries" layers, maxzoom was changed from 8 to 6. - The zoom value in the interpolate line width of the "Maneuver Arrows fine scale in guide mode" layer was changed from 19 to 20. - The search_marker_icon and search_marker_text labeling groups were added, and these groups are specified in the "Search Marker" layer. - The "selection_marker" and "selection_marker_text" labeling groups are specified in the "selection search marker" layer.
- Some theme inconsistencies occurred because of the use of a range from the data. To prevent this from happening in the future, all scales in templates are now specified explicitly.
v2.1.0
Release Date: December 24, 2021
π New features
- Added crosswalk and bike routes, as well as routes on public transportation.
- Added ability to disable route completion and GPS signal loss instructions.
- Two fields appeared in the
Location
structure - the name of the geopositioning sourcesource
and the time point at which the geoposition was defined,timestamp
. - Class
PackedMapState
for serialization and deserialization of the map state. The oldserialize(cameraPosition:)
anddeserialize(positionString:)
methods are marked as deprecated. - Class
PackedSearchQuery
for serializing and deserializing a search query. - Added
mapToScreen(geoPointWithElevation:)
method to theProjection
structure. - Implemented a control for displaying routes on public transport.
- We have implemented sending statistics for the navigator.
π Fixes
- Fixed error when navigating from
FreeRoam
mode to navigation mode, and the instruction about re-route was played. - Fixed disappearance of intermediate points when re-routing a route.
- Added 30 seconds timer for sounding instructions on rerouting.
- Fixed working with traffic events for anonymous users.
- Removed the speed controller display for pedestrian and bicycle routes.
- Removed notification about bad GPS signal when starting navigation simulation.
- Fixed issue where map tiles would not load if AdGuard VPN was enabled.
- Optimized the display of traffic jams on the map.
- Fixed crash when getting network info.
- Fixed crash in
MagneticHeadingProvider
.
v1.6.12
Release Date: December 8, 2021
π Fixes
- Fixed crashes related to SIGABRT system signal.
v2.0.0
Release Date: December 2, 2021
π New features
- Added the
SearchResultType
field toSearchResult
. - In the
SearchQueryBuilder
it is now possible to set filtering viaSearchQueryBuilder.setDirectoryFilter(directoryFilter)
and sorting viaSearchQueryBuilder.setSortingType(sortingType)
. Currently, filtering by open time (open now
andopen at a specific time
) and sorting by relevance, by rating and by distance from the user's current location are implemented. - In
SearchQueryBuilder
it became possible to set the current position of the user for the search query viaSearchQueryBuilder.setLocation(locationPoint)
. - Added
Bearing(point)
,distance(point)
andmove(bearing, meter)
methods toGeoPoint
andGeoPointWithElevation
classes. - Added field
RouteDistance.kilometers
. - Added function
TimePoint.now()
.
π Fixes
- Fixed the display of cameras on the route. Cameras that are closer to the start of the route are now always displayed at a higher priority than cameras that are further away.
- Fixed a crash when running
MyLocationController
. - Fixed a bug where cameras in
free roam
mode were sometimes displayed without taking into account the miscalculation 2 km ahead in the direction of travel.
βοΈ Changes affecting backward compatibility
- Changed signature of methods
NavigationManager.start
andNavigationManager.startSimulation
. They now takeRouteBuildOptions
together with the route. - The method
Geometry.hasIntersection
is renamed toGeometry.intersects
. - In
ParkingPurpose
the stateTRUCK
was removed. Instead, theParkingInfo.forTruck
flag was added. - The function
toMapGeometry(route: TrafficRoute)
was replaced by the functiontoMapGeometry(geometry: GeoPointRouteAttribute)
. - Removed the
BetterRouteInfo.duration
field. AddedBetterRouteInfo.trafficRoute
andBetterRouteInfo.startPoint
instead. - Structures
DayTime
,WeekDay
,WeekTime
andWeekTimeInterval
moved fromru.dgis.sdk.road_events
toru.dgis.sdk
. - Added classes
Route
andTraffic
. TheTrafficRoute
has onlyroute
andtraffic
properties instead of the previous set of properties through which you can get full information about the route. - Removed
BicycleRouteSearchOptions
andPedestrianRouteSearchOptions
- transferred to future releases. - Renamed
RouteParams
toRouteEditorRouteParams
.
Migration from v1.x.
- Instead of
Arcdegree
, which was used to set camera rotation, latitude, longitude, now separate types -Bearing
,Latitude
,Longitude
. - Changed API for working with traffic jams: Renamed
TrafficScore
inTrafficScoreProvider
,TrafficScoreValue
inTrafficScore
,TrafficManager
was removed -TrafficScoreProvider
is created through the constructor. - Method
LocaleManager.setOverridedLocales
is renamed tooverrideLocales
. - Class
ScreenSize
moved fromru.dgis.map
toru.dgis.common
. - Instead of properties
HttpOptions.userSslCerts
,HttpOptions.disableSystemSslCerts
now propertyHttpOptions.certificates
which allows to set list of certificates. - Fixes and changes to custom camera controllers API - now there can be only one controller, added/removed by
Camera.setCustomFollowController
/Camera.removeCustomFollowController
methods.
πΊ Changes in map styles
- In the Styles Editor, on the
Dynamic Objects
tab, thes_dvg_accuracy_circle
object should use a sublayer (if there are 2 more, that's fine, they were left for compatibility with the first version). - The layers
Speed camera
in directoriesTransport events layer
,Transport events layer
, `Transport events en route en route en route en route en route en route en route en route en route en route en route en route en route en route en route en route en route en route en route en route en scale changed to 13-14. - Added layer
Parking area auto-generated for parking mode
. - Removed layer
Parkings
. - Added layers
Parking spaces with unknown price
,Parking spaces for disabled people
,Resident parking spaces
,Taxi parking spaces
,Parking spaces for free
. - There are new layers in the catalogs
Transport events on route in maintenance mode
andTransport events on route
. Add them to your styles to continue to display cameras on the route, and there are new events. - Added catalogs with layers
Transport events layer in guidance mode' and
Transport events layer' for the new traffic events layer. - A catalog of layers
Parking bubbles
was added, as well as layersParking no-go zone for parking enabled layer
andParking area for parking mode
. These data are displayed only when the map has the attributeparkingOn
set to true. - The
Parking Area
layer is now displayed when theparkingOn
attribute of the map is absent or set to false.
v1.6.10
Release Date: November 25, 2021
π Fixes
- Creating a map with size 0x0 is now valid.
- Fixed crash when running
MyLocationController
.
v2.0.0-beta.8
Release Date: November 18, 2021
π New features
- Added collecting and sending traffic jam data while navigating. Enabled by default, can be turned off with
TrafficCollector.trafficCollectingAllowed
. - Parking data in the directory -
DirectoryObject.parkingInfo
. - Data about reviews in the directory -
DirectoryObject.reviews
. - Data about the work status in the directory -
DirectoryObject.workStatus
. - Events in the statistics about creating and deleting map sources.
π Fixes
- Freeze on poor network connection.
- Traffic events display in navigator.
- Removed navigation start delay.
- Incorrect
Model.state
value when switching from free-roam to route mode. - Incorrect macroGraph update status -
RoadMacroGraph.info.updateStatus
. - Behavior in case of changing map size during flight.
- Behavior of
Camera.padding
when map size is small.
βοΈ Changes affecting backward compatibility
- The
LocaleManager.setOverridedLocales
method is renamed tooverrideLocales
.
βοΈ Other
- Requires styles to be reloaded from the editor. Fixes the display of railroads, and also fixes a crash in one of the scenarios.
v1.6.6
Release Date: November 15, 2021
π Fixes
- Fixed freezing on bad network connection.
- Fixed crash in loading map tiles.
- Circle(
Circle
) was flickering when moving.
βοΈ Other
- Requires styles to be reloaded from the editor. Fixes the display of railroads, and also fixes a crash in one of the scenarios.
v2.0.0-beta.7
Release Date: November 10, 2021
π New features
- Added captions to traffic event markers.
- Ability to enable/disable voicing of instructions, obstacles and road subtype -
SoundCategory.INSTRUCTIONS
,SoundCategory.OBSTACLES
,SoundCategory.ROAD_SUBTYPES
. - Send statistics about parameters of used cards - size, DPI, etc.
π Fixes
- Fixed voice road events that didn't have a lane specified.
- Not allowing the map to be zoomed by double tapping when zooming is disabled in settings.
- Fixed flickering while moving for the circle(
Circle
). - Removed the voiceover of speed bumps (it did not work before either - no such sounds, there was a blank instead).
v2.0.0-beta.6
Release Date: October 29, 2021
π Fixes
- Getting photos of road events -
RoadEvent.photos
. - Displaying a photo in the road event
RoadEventCard
. - Ability to create road events -
RoadEventManager
with methodscreateAccident
,createCamera
etc. - Possibility to create a traffic event -
AddRoadEventCard
. - Ability to delete a road event -
RoadEvent.remover
. - Ability to perform actions with road events (confirm, deny, like, etc.) -
RoadEvent.availableActions
. - Improved description of road events-cameras.
- Corrected the display of icons of two-sided overlaps - previously it was displayed only on one side.
- Ability to set the map size for functions to calculate camera positions -
calcPosition
andzoomOutToFit
parameter. - Route settings
RouteMapObjectSource.routeSourceSettings
,NavigationManager.routeSourceSettings
, with which you can set parameters of maneuver arrows display. - Alouding of re-building the route in the navigator.
- Fixed grouped cameras dubbing - only priority cameras are dubbed.
- Voice volume setting in navigator -
NavigationManager.soundNotificationSettings.notificationVolume
. - Inactive state of navigator UI when GPS is absent.
- Fixed bug in sending statistics when there were few events
MapSource
with type2gis.online
. - Fixed crash when using
LogSink
. - Fixed potential crashes in handling network requests.
- Detailed logging of network request information at
LogLevel.VERBOSE
level.
βοΈ Changes affecting backward compatibility
- The
ScreenSize
class was moved fromru.dgis.map
toru.dgis.common
.
v1.6.5
Release Date: October 29, 2021
- Fixed crash when using
LogSink
.
v1.6.4
Release Date: October 29, 2021
- Fixed potential crashes in network request handling.
v1.6.3
Release Date: October 26, 2021
- Fixed a bug in sending statistics with few
MapSource
events of the2gis.online
type. - Fixed crash when
MyLocationController
is running.
v2.0.0-beta.5
Release Date: October 21, 2021
π Fixes
- Fixed an error when downloading territories.
- Added the ability to process a click on a traffic event on a route.
- Supported rendering cameras in
FreeRoam
mode when using offline road graph source. - Fixed a bug where cameras were not displayed when you first build a route.
- Fixed crash when
MyLocationController
is running. - Fixed errors in the display of traffic events.
- Fixed a bug where intersection control camera icons were not displayed.
- Added ability to disable voice by type via
NavigationManager.soundNotificationSettings.enabledSoundCategories
.
v2.0.0-beta.4
Release Date: October 14, 2021
π Fixes
- Corrections to the road event source (
RoadEventSource
). - Attribute
dgis_renderMode
byMapView
to setMapOptions.renderMode
. - Fixed suggestion work for some queries.
- Re-search of a route in the navigator if the previous attempt was unsuccessful.
- Ability to get current geo-position from navigator's model, with which navigator works -
Model.location
. - Correction in voicing of cameras in navigator - now distance to camera is reported, not to the beginning of its action.
- Additional description of road type -
RouteInfo.roadSubtypes
. - Added default values for TruckRouteSearchOptions
TruckRouteSearchOptions
. - Setting proxy for network requests -
HttpOptions.proxy
.
βοΈ Changes affecting backward compatibility
- Fixes and changes to custom camera controllers API - now there can be only one controller, added/removed by
Camera.setCustomFollowController
/Camera.removeCustomFollowController
methods. - The
NavigationView
does not create a geoposition marker on the map (MyLocationMapObjectSource
), this has to be done in custom code. To move the navigator marker into the source creation, you need to add a position controller, for example viacreateSmoothMyLocationController()
. Model.routeInfo
renamed toModel.route
,Model.currentRoutePosition
toModel.routePosition
, instead ofModel.badLocation
now the oppositeModel.locationAvailable
, instead ofModel.currentSpeedChannel
nowModel.locationChannel.groundSpeed
.
πΊ Changes in map styles
- The "Speed Camera" layers have changed the display scale to 13-14 in the "Transport Events Layer in Maintain Mode", "Transport Events Layer", "Transport Events on Route in Maintain Mode", and "Transport Events on Route" catalogs.
- The "Parking area" and "Parking area for parking mode" layers have been given a color for the selected state.
- Auto generated parking area for parking mode" layer was added.
- The layers in the "Parking Bubbles" catalog have the icon priority raised to 1, so that they displace the regular parking icons.
- Removed the "Parking Bubbles" layer.
- Added layers "Parking lots with unknown price", "Handicapped parking lots", "Resident parking lots", "Taxi parking lots", and "Free parking lots".
v2.0.0-beta.3
Release Date: October 7, 2021
- Displaying of traffic events on the map (not tied to a specific route) -
RoadEventSource
,RoadEvent
,RoadEventCard
. - Possibility to set a custom camera tracking controller -
CustomFollowController
. - Fixed regression: dragging markers without text did not work.
- Displayed the beginning and end of toll roads on the map.
- Support for inter-regional offline fare search.
- Support for cab as a separate type of transport -
TaxiRouteSearchOptions
. - Support of passes for trucks -
TruckRouteSearchOptions.passId
,TrafficRoute.truckPassZoneIds
. - Fixed extra maneuver sounding in navigator.
- Voice announcement of crashes and roadworks in navigator.
- Voice announcement about via points in navigator.
- Correction in the navigator when navigator has zero speed.
- Displaying of the next maneuver and exit number in the navigator's UI.
- Ability to customize the colors of the navigator's standard UI. For this purpose, you will need to define a theme for
NavigationView
inherited from"DGisTheme.Navigation"
. - The route information -
RoadTypeInfo
,TransportTypeInfo
,RoadSurfaceInfo
,SpeedLimitInfo
,RoadNameInfo
,TollInfo
- is now located inRouteInfo
as lists, the current value can be obtained from them by accessing the corresponding index innavigation. Model
-Model.roadTypeIndex
,Model.transportTypeIndex
etc. - Changes in map styles:
- Change affecting backward compatibility There are new layers in the "Route Traffic Events in Maintain Mode" and "Route Traffic Events" directories. Add them to your styles so that the cameras on the route continue to be displayed, and new events have appeared.
- Added catalogs with layers "Transport Events Layer in Maintain Mode" and "Transport Events Layer" for the new traffic events layer.
- Added "Parking Bubbles" layer catalog, as well as "No Parking Zone for Enabled Parking Layer" and "Parking Area for Parking Mode" layers. These data are displayed only when the map has the parkingOn attribute set to true.
- The "Parking area" layer. is now displayed when the map has no parkingOn attribute or is set to false.
v2.0.0-beta.2
Release Date: September 28, 2021
- Fixed bug with low map performance at large scale.
- Fixed race in
RouteMapObject
, which could cause it to display incorrectly. - Added mapping and voicing of new camera types on the map.
- Added
Camera.size
property - view area size in pixels. - Changes in navigator's API:
- Renamed
Model.maneuverInstructionIndex
property toinstructionIndex
. RoadRule
moved fromdgis.sdk.navigation
todgis.sdk.routing
.- For information about navigator instructions,
RouteInfo.instructions
is used, the maneuver name from which can be obtained using thegetInstructionManeuver
function.
- Renamed
- Fixed tracking of geoposition when using navigator with several maps at the same time.
- Removed unnecessary transition of
Model
intoState.DISABLED
state when re-searching a route. - Change affecting backward compatibility Instead of properties
HttpOptions.userSslCerts
,HttpOptions.disableSystemSslCerts
now propertyHttpOptions.certificates
, allowing to set list of certificates.
v1.6.2
Release Date: September 23, 2021
- Fixed problems that occurred after refinement of moving tokens without text - static tokens without text worked slowly and transparency was not set for tokens without text.
- Updated the size of the 2GIS logo on the map.
- Fixed an issue where when setting the tilt angle when creating a map, the tilt angle would reset when any map changes were made.
v2.0.0-beta.1.2
Release Date: September 23, 2021
- Fixed issues that occurred after updating marker movement without text - static markers without text worked slowly and the transparency was not set for markers without text.
- Updated the size of the 2GIS logo on the map.
- Fixed the issue when setting the tilt angle when creating a map, the tilt angle was reset on any map changes.
v1.6.0
Release Date: September 21, 2021
- Significantly accelerated the movement of markers without text.
Important: it is necessary to re-export the style from the style editor, otherwise the markers will not be displayed. - Changed the logic of clustering - the cluster center is now the center of mass of the sub-clusters of the previous level.
- Fixed an error where in the clustering mode, when removing a marker, nearby closely located markers were also deleted.
- Fixed the functionality of
SuggestQueryBuilder.setSuggestorType
- previously, this option did not affect the result.
v2.0.0-beta.1
Release Date: September 21, 2021
- Significantly accelerated the movement of markers without text.
Important: it is necessary to re-export the style from the style editor, otherwise the markers will not be displayed. - Changed the logic of clustering - the cluster center is now the center of mass of the sub-clusters of the previous level.
- Fixed an error where in the clustering mode, when removing a marker, nearby closely located markers were also deleted.
- Added the compass control -
CompassControl
. - Added control allowing to manage the map padding from the layout -
MapPaddingControl
. - Fixed the functionality of
SuggestQueryBuilder.setSuggestorType
- previously this option did not affect the result. - Added properties
TrafficRoute.startPoint
,TrafficRoute.finishPoint
- the starting and finishing points of the route. - Added settings for controlling zooming in the navigator -
NavigationManager.zoomFollowSettings
. - Added settings for updating traffic data in the navigator -
NavigationManager.trafficSettings
. - Change affecting backward compatibility
NavigationView
no longer creates aNavigationManager
, it must be set from the outside through thenavigationManager
property. - Navigator UI is localized in Russian and English.
- Added map control elements to the navigator UI.
- Added notification to the UI about the navigator's state - re-search, no GPS signal.
- New design of navigation controls in Free Roam mode.
- Switching between arrival time and time to arrival in
RemainingRouteInfoControl
. BetterRoutePromptControl
when not interacted with switches to collapsed state.
Migration from v1.x
- Instead of
Arcdegree
, which was used to set the camera rotation, latitude, longitude, now there are separate types -Bearing
,Latitude
,Longitude
. - The API for working with traffic has changed:
TrafficScore
has been renamed toTrafficScoreProvider
,TrafficScoreValue
toTrafficScore
,TrafficManager
removed -TrafficScoreProvider
is created through the constructor. - Basic styles have changed. In the style editor on the
Dynamic Objects
tab, theAccuracy radius of the geoposition
object should use thes_dvg_accuracy_circle
sublayer (if there are also 2, it's okay, they are left for compatibility with the first version).
v1.5.0
Release Date: September 7, 2021
- Fixed a problem with changing the marker icon through
Marker.icon
, when a blank icon was displayed before the new loaded image appeared. Now the old icon is displayed until the new one is loaded. - Reworked the rendering of road overlaps over traffic.
v2.0.0-alpha.8
Release Date: September 3, 2021
- The navigator automatically changes the zoom level of the map depending on the speed (without the ability to configure it for now).
- Fixed the display of traffic on the map at maximum zoom levels.
- Fixed a problem with changing the marker icon through
Marker.icon
, when a blank icon was displayed before the new loaded image appeared. Now the old icon is displayed until the new one is loaded. - Reworked the calculation of the camera coverage zone on the route.
- An error has been fixed where tracking of the position is not turned on immediately when starting navigation.
- Basic UI controls in the navigator now support different navigator modes such as
RouteSearch
,Finished
,Disabled
. - Reworked the rendering of road overlaps over traffic.
- Change affecting backward compatibility. The
RouteSearchOptions
class has been replaced with a variant that can contain one of the specific classes -CarRouteSearchOptions
,PedestrianRouteSearchOptions
,BicycleRouteSearchOptions
,PublicTransportRouteSearchOptions
, orTruckRouteSearchOptions
. - Change affecting backward compatibility. The
RoutingType
enum has been removed. Instead, use theRouteSearchOptions
. - Change affecting backward compatibility. The
distanceCountersChannel
was removed from theNavigationManager.uiModel
class. Instead, usecurrentRoutePositionChannel
to calculate the remaining distance to the nearest maneuver or to the end of the route. TheDistanceCounters
andHumpPoint
classes have been removed. The newIntermediatePoint
class describes an intermediate point on the route. The current position on the route is described by the newRoutePosition
class. - Change affecting backward compatibility. The
TrafficManager
class has been removed. TheTrafficScore
class has been renamed toTrafficScoreProvider
and is now the primary class for working with traffic. TheTrafficScoreValue
class has been renamed toTrafficScore
. - Change affecting backward compatibility. Basic styles have changed. In the style editor on the
Dynamic Objects
tab, theAccuracy radius of the geoposition
object should use thes_dvg_accuracy_circle
sublayer (if there are also 2, it's okay, they are left for compatibility with the first version).
v2.0.0-alpha.7
Release Date: August 26, 2021
- Fixed an issue where
MapObjectManager.removeObject
would not work if attributes of the object being removed were changed in parallel. - Improved the clustering generated through
MapObjectManager.withClustering
. Now when deleting markers fromMapObjectManager
, the cluster position is corrected if the cluster-forming marker was deleted. - The
CameraPositionPoint
is now taken into account when calculating theCameraPosition
with thecalcPosition
function. - Change affecting backward compatibility. The display of the current location marker has been improved - now the icon with the direction can always be drawn, regardless of the navigation mode.
If you use custom styles, in the style editor you need to correct the dynamic objects of the current location as follows:
- At
Marker on auto
andMarker on auto, outdated position
in the itemVisibility
put the toggle switchNavigator mode
and select the itemOn
. - At
Directional marker
,Directional marker
andDirectional marker, obsolete position
in the itemVisibility
set the switchNavigator mode
and select the itemOff
.
- At
- Control about the passage of the zone of the camera -
CameraControl
. - Fixed hang-up in
TrafficSource
. - Fixes in the attraction to the route in Free Roam mode.
- Fixed crash when creating a large number of markers with set
userData
.
v1.4.1
Release Date: August 25, 2021
- Corrected ProGuard config for correct build.
v1.4.0
Release Date: August 24, 2021
- Fixed an issue where
MapObjectManager.removeObject
would not work if attributes of the object being removed were changed in parallel. - Improved the clustering generated through
MapObjectManager.withClustering
. Now when deleting markers fromMapObjectManager
, the cluster position is corrected if the cluster-forming marker was deleted. - The
CameraPositionPoint
is now taken into account when calculating theCameraPosition
with thecalcPosition
function. - Change affecting backward compatibility. The display of the current location marker has been improved - now the icon with the direction can always be drawn, regardless of the navigation mode.
If you use custom styles, in the style editor you need to correct the dynamic objects of the current location as follows:
- At
Marker on auto
andMarker on auto, outdated position
in the itemVisibility
put the toggle switchNavigator mode
and select the itemOn
. - At
Marker with direction
,Marker without direction
andMarker without direction, obsolete position
in itemVisibility
toggle switchNavigator mode
and select itemOff
.
- At
v1.3.1
Release Date: August 17, 2021
- Fixed crash in
NetworkConnectionManager
.
v2.0.0-alpha.6
Release Date: August 13, 2021
- Added the ability to customize the pedestrian voice of the route when navigating.
- Added a channel
navigationActiveChannel
inNavigationManager.uiModel
, which returns two states -active
andinactive
. The second state is set when the user has finished driving the car and the navigator can be turned off. - Fixed crash when changing marker position and re-initializing
MapObjectManager
in parallel. - Fixed a bug where clustering would stop working for small zoom levels (0 or 1).
- Fixed incorrect behavior when clicking into a cluster when displaying clustering.
- Fixed a bug where the map in non-interactive mode was still clickable.
- Removed an exception for repeated deletions of subscriptions to
Channel
channels.
v1.3.0
Release Date: August 12, 2021
- Fixed crash when changing marker position and re-initializing
MapObjectManager
in parallel. - Fixed a bug where clustering would stop working for small zoom levels (0 or 1).
- Fixed incorrect behavior when clicking into a cluster when displaying clustering.
- Fixed a bug where the map in non-interactive mode was still clickable.
- Removed an exception for repeated deletions of subscriptions to
Channel
channels.
v2.0.0-alpha.5
Release Date: August 6, 2021
- Fixed an issue in the navigator where long refreshes occurred in navigation mode, and the position marker had an incorrect direction and shifted to a random position.
- The
MapObjectManager
methodclusteringObjects(cameraPosition)
appeared to get clustering objects for a given camera position. The method returns both clustering objectsSimpleClusterObject
and markersMarker
. - Using the
SimpleClusterObject
object, it is now possible to change cluster attributes in the same way as the attributes of theMarker
markers, except for the cluster position. - Fixed a memory leak when deleting a map.
- Fixed an issue where it was impossible to select a route at maximum zoom levels.
- Removed hanging of tracking the current position when changing the animation duration in the navigator.
v1.2.0
Release Date: August 5, 2021
- The
MapObjectManager
methodclusteringObjects(cameraPosition)
appeared to get clustering objects for a given camera position. The method returns both clustering objectsSimpleClusterObject
and markersMarker
. - Using the
SimpleClusterObject
object, it is now possible to change cluster attributes in the same way as the attributes of theMarker
markers, except for the cluster position. - Fixed a memory leak when deleting a map.
v2.0.0-alpha.4
Release Date: July 28, 2021
- Added
calloutPositionChannel
with the position of the babble over the route in theRouteMapObject
class. - In the structure
Camera
, which returnsNavigationManager
, added a fieldrange
- information about the range of the camera. - The voice of the navigator depending on the type of route - pedestrian/bicycle/vehicle - has been divided.
v1.1.0
Release Date: July 28, 2021
-
Fixed a bug with
MapObjectManager
adding a marker to the map before the image is fully loaded. -
Updated 2GIS + SBER logo on the map.
-
Optimized creation/deletion of
MapTextureView
. -
Fixed a bug where the map was not updated when markers were deleted when clustering through
MapObjectManager
. -
Events in
MapEventProcessor
are now not handled if the map is not interactive. -
General styles have been updated:
-
Moved to the editor:
A. Maneuver Arrows (Route Line on Auto => 4 layers of `Maneuver Arrows*').
B. Start point, end point, intermediate point of the route, and connection point of different parts of the routes (layers
Point B
,Point A
,Connection points
,Intermediate points
in theDynamic objects
directory).C. Search markers (layers
Search marker selection',
Search marker',Generalized marker' in the
Dynamic objects' catalog).D. Objects on the route (layers in the directories
TUGC on the route in guidance mode
andTUGC on the route
).E. Pedestrian parts of routes (layers in the directories
TUGC route line in guided mode' and
TUGC route line').F. Geo-position marker for pedestrian mode (layers
Marker with direction
,Marker without direction
,Old marker without direction
in theDynamic objects
catalog).Now these objects are customized from the editor and don't appear unconditionally on top of everything. The layers must be copied to their styles and placed in a similar order, so that all objects will display correctly with the new version of the SDK. To copy a layer, you can select the layers you want, press
Ctrl+C/Cmd+C
and open in the same window another style. -
The
Walker Marker
layer has been deleted. It should also be removed in its own styles. -
Changed layers for displaying entrances (layers
Elevations above houses
andElevations below houses
). Now the data are not set via JSON, and selected the correct layers in the tabData
. Also in the night theme, the font has been removed for the entrances under the houses, so that they are displayed without signatures. Need to make similar changes in their own styles. -
Added layers
Signatures of mountain ranges
andSignatures of platforms
to the directorySignatures of geo objects
in the night theme and layerGraffiti
in the directorySightseeing sights
. -
Added layers
Christmas bazaar
,Police
,Shower stall
,Tanzpol
to the daytime theme in the `Sightseeing' catalog. -
Changed the layers in the directory
Roads
, requires them to update their own styles.
-
v2.0.0-alpha.3
Release Date: July 23, 2021
-
Fixed a problem with guidance on a long route: update geo-position marker and the whole map was jerking. Now map update is smooth.
-
Fixed an issue with
MapObjectManager
adding marker to the map before the image is fully loaded. -
Updated 2GIS + SBER logo on the map.
-
Optimized creation/deletion of
MapTextureView
. -
Fixed a bug where the map was not updated when markers were deleted when clustering through
MapObjectManager
. -
Events in
MapEventProcessor
are now not handled if the map is not interactive. -
General styles were updated:
-
Moved to the editor:
A. Maneuver Arrows (Line of Route on Auto => 4 layers `Maneuver Arrows*').
B. Start point, end point, intermediate point of the route, and connection point of different parts of the routes (layers
Point B
,Point A
,Connection points
,Intermediate points
in theDynamic objects
directory).C. Search markers (layers
Search marker selection',
Search marker',Generalized marker' in the
Dynamic objects' catalog).D. Objects on the route (layers in the directories
TUGC on the route in guidance mode
andTUGC on the route
).E. Pedestrian parts of routes (layers in the directories
TUGC route line in guided mode' and
TUGC route line').F. Geo-position marker for pedestrian mode (layers
Marker with direction
,Marker without direction
,Old marker without direction
in theDynamic objects
catalog).Now these objects are customized from the editor and don't appear unconditionally on top of everything. The layers must be copied to their styles and placed in a similar order, so that all objects will display correctly with the new version of the SDK. To copy a layer, you can select the layers you want, press
Ctrl+C/Cmd+C
and open in the same window another style. -
The
Walker Marker
layer has been deleted. It should also be removed in its own styles. -
Changed layers for displaying entrances (layers
Elevations above houses
andElevations below houses
). Now the data are not set via JSON, and selected the correct layers in the tabData
. Also in the night theme, the font has been removed for the entrances under the houses, so that they are displayed without signatures. Need to make similar changes in their own styles. -
Added layers
Signatures of mountain ranges
andSignatures of platforms
to the directorySignatures of geo objects
in the night theme and layerGraffiti
in the directorySightseeing sights
. -
Added layers
Christmas bazaar
,Police
,Shower stall
,Tanzpol
to the daytime theme in the `Sightseeing' catalog. -
Changed the layers in the directory
Roads
, requires them to update their own styles.
-
v2.0.0-alpha.2
Release Date: July 13, 2021
- Search for pedestrian routes -
RoutingType.PEDESTRIAN
,RouteInfo.pedestrianObstacles
. - Search for routes on public transport -
RoutingType.PUBLIC
,TrafficRoute.publicTransport
. - Ability to select the voice of the navigator -
NavigationManager.voiceSelector
,VoiceManager
. - Download offline territories -
TerritoryManager
. - Management of floor plans -
Map.indoorManager
. - Getting and setting the rendering level of map objects -
SimpleMapObject.zIndex
. - Ability to specify which parts of the route are displayed on the map -
RouteMapObject.displayFlags
. - Getting lane images -
getLanesControlImages
. - Updating location marker in navigator when leaving a route.
- Updated location marker on the map.
- Breaking change: In
RouteInfo
now the route(TrafficRoute
) is the whole route instead of the route length.
v1.0.1
Release Date: July 9, 2021
π First public release! π
- Breaking change: Changed package breakdown - deleted
ru.dgis.sdk.context
, its contents are located inru.dgis.sdk
. - Clustering for
Marker
-MapObjectManager.withClustering
,SimpleClusterRenderer
,SimpleClusterOptions
. - Reduced size of map assembly - removed offline gazetteer and map work.
- Traffic Control UI -
TrafficControl
. - Setting map refresh rate in power saving mode -
MapOptions.powerSavingMaxFps
. - Setting inscription location relative to marker -
TextStyle.textPlacement
,TextStyle.textOffset
. - Ability to set a handler when you click on the copyright -
MapView.setUriOpener
. - Breaking change: Function
toMapGeometry(trafficRoute, routePoint)
renamed toremainingRouteGeometry
. - Optimized handling of network connections.
v0.16.1
Release Date: June 7, 2021
- Map default stylesheet updated - resized lettering and icons.
v0.16.0
Release Date: June 3, 2021
- Possibility to set map object order - MarkerOptions.zIndex
, PolygonOptions.zIndex
etc. - Possibility to turn off marker animation
MarkerOptions.animatedAppearance
. - Locales accounting when displaying map and searching, possibility to set locales different from system -
LocaleManager.setOverridedLocales
. - Ability to define the geometry of the rest of the route -
toMapGeometry(trafficRoute, currentRoutePoint)
. - Breaking change: Instead of
MapOptions.style
nowMapOptions.styleFile
, which allows to set style synchronously. TheStyleBuilder.loadStyleFromXxx
methods are replaced byStyleBuilder.loadStyle(styleFile)
. - Breaking change: Removed obsolete class
MarkerBuilder
, insteadMarker
,MapObjectManager
should be used. - Breaking change: Changed the dimensionality of
LogicalPixel
- now they are the same asdp
(160 logical pixels in an inch). This leads to a change in the size of the map objects, you must re-adjust styles, but the map in the application looks the same as in the editor. - Hidden classes intended for internal use.
- Fixed display of map at a zero z-level.
v0.15.1
Release Date: May 27, 2021
- Fixed handling of long press on map -
TouchEventsObserver.onLongTouch
.
v0.15.0
Release Date: May 25, 2021
- Ability to set camera tilt angle depending on zoom -
ZoomToTiltRelation
,Camera.zoomToTiltRelation
. - Check for intersection of geometries -
Geometry.hasIntersection
. - Ability to set a custom logging handler -
LogOptions.customSink
. - Ability to set a custom gesture handler -
MapGestureRecognitionEngine
,MapView.useCustomGestureRecognitionEngine
. - The map zoom mode is now set via
GestureManager.setSettingsAboutMapPositionPoint
and affects all gestures. - An indication that the first search item is usable directly -
SearchResult.autoUseFirstResult
. - Changed
MapObjectManager
interface - constructorsMarker
,Polygon
etc. instead ofMapObjectManager.createMarker/createPolygon
, methodsMapObjectManager.addObject/addObjects/removeObject
etc. - Changed order of parameters in
calcPosition
andzoomOutToFit
. - Renamed
DataCollectStatus
intoPersonalDataCollectionConsent
. - Simplified SDK initialization from Java - some
DGis.initialize
parameters became optional. - Fix for caching map tiles.
v0.14.0
Release Date: May 5, 2021
- Fixed a bug when adding a marker - by default, it faces up the screen regardless of map rotation.
- Change affecting backward compatibility. Initial marker rotation (
MarkerOptions.iconMapDirection
) and existing marker rotation (Marker.iconMapDirection
) are now optional.
v0.13.0
Release Date: April 30, 2021
- Fixed black blinking of the map when creating it.
- Ability to set marker rotation
MarkerOptions.iconMapDirection
,Marker.iconMapDirection
. - In the copyright on the map by default does not show the version of the SDK, to enable it, set
MapView.showApiVersionInCopyrightView = true
. - Information about the position of cameras in the navigator -
Camera.geoPoint, Camera.bearing
. - Ability to set
positionPoint
in the functionscalcPosition
andzoomOutToFit
. - Functions to create objects replaced by constructors
createMapObjectManager
->MapObjectManager
,Geometry.createPoint
->PointGeometry
etc.
v0.12.1
Release Date: April 23, 2021
- Corrected accounting of map scale.
- Minimum zoom (
CameraZoomRestrictions.minZoom
) now defaults to 2. - Markers superseded each other removed.
- Fixed in statistics handling.
v0.12
Release Date: April 22, 2021
- Ability to use SVG images for markers -
imageFromAsset(context, "some.svg"), imageFromSvg(context, svgData)
. - Fixed crashes during code optimization with ProGuard.
- Fixed accounting for polyline visibility
PolylineOptions.visible, Polyline.isVisible
. - Added collection of anonymous usage statistics, it is enabled by default (parameter
dataCollectStatus
inDGis.initialize
), it is recommended to disable it only in case of user's explicit choice(for example, GDPR refusal). - The map image (
MapView.takeSnapshot
) displays the copyright. - The ability to set your own camera movement path -
Camera.move(moveController)
. - Property
padding
moved fromMap
toCamera
. - Ability to set camera behavior when changing
padding
-Camera.setPadding(padding, positionPointChangeBehaviour)
. - The search (
SearchManager
) takes into account the location of the user. - Renamed property
GeometryMapObject.originalGeometry
togeometry
. - Removed the
GeometryMapObject.shift
property instead of using thegeometry
setting. - Fixed parameter types
registerPlatformLocationSource
,registerPlatformMagneticSource
-LocationSource
,MagneticHeadingSource
instead ofAny
. - Accelerated getting result of
Future
andChannel
triggering. - Obsolete methods of
Future
andChannel
were removed.
v0.11
Release Date: April 14, 2021
- Ability to set an arbitrary map theme -
MapOptions.lightTheme
,MapOptions.darkTheme
,Map.setTheme(light, dark)
,Map.setTheme(name)
. - Management and getting information about http-cache -
HttpCacheManager
. - Additional constructors of data-types -
GeoPoint(lat: Double, lon: Double)
,Color(r, g, b, a)
, etc. - Information about the lanes of the route -
RouteInfo.laneSigns
. - Ability to rotate/scale the map relative to its center (not the center of the gesture) -
RotationSettings.rotateAboutMapPositionPoint
,ScalingSettings.scalingAboutMapPositionPoint
. - Ability to set speed in navigation simulation -
SimulationSettings.speed
. - Removed thin black border at the map objects, when it is not set.
- Fixed crash when deleting map on emulators.
- Fixed crash when setting
LocationSource
. - Breaking change:
TextStyle.fontSize
,TextStyle.strokeWidth
have typeLogicalPixel
, notFloat
. - Breaking change: instead of
navigation.Model.laneSign
nownavigation.Model.laneSignIndex
, andLaneSign
can be obtained by this index fromRouteInfo.laneSigns
v0.10
Release Date: April 7, 2021
- Added method takeSnapshot to get the last drawn frame in the picture.
- Parameter interactive to disable user interaction with the map.
- Added renderMode. Now you can render the map in TextureView.
- Added polyline with gradient.
- Breaking change: updated the [GeoRect] class(/en/android/native/maps/reference/ru.dgis.sdk.coordinates.GeoRect).
removeSource
no longer throws an exception. Even if the source has not been added to the map.
v0.9
Release Date: March 24, 2021
- Added ability to draw dashed line.
- Opacity for Marker.
- Converters functions to work with Style Zoom(projectionZToStyleZ, styleZToProjectionZ).
- New type AttributeValue was added to work with map attributes.
- showApiVersionInCopyrightView to display SDK version in copyright.
- Fixed crash when calling getMapAsync from a not-attached View.
- From DgisMapObject you can no longer get Future on the directory object. You need to use SearchManager.
v0.8
Release Date: March 17, 2021
- Breaking change: we have changed the format for handling property change subscriptions. Previously fields like
camera.position
were of typeStatefulChannel
. To get notifications about data changes inChannel
you need to callcamera.position.connect()
, and get the current value throughcamera.position.value
. This kind of API caused questions, so in the new versioncamera.position
(and other properties ofStatefulChannel
) is just a getter/setter. And you have to usecamera.positionChannel
to subscribe to change. - Have added a cache for the tiles on the map. By default, the cache is included, and the maximum storage size is 300MB. You can disable it or change its size in HttpOptions.
- Padding on the map.
- Added possibility to change current geometry for Polygon/Polyline objects.
- Added a source for raster tiles (see [createRasterTileData]). createRasterTileDataSource.
- Supported theme attribute for map stylesheets unloaded from the editor.
- Moved methods for creating marker icons imageFromAsset/imageFromCanvas/imageFromResource to the
en.dgis.sdk.map
package. - Converted methods to property where this form is more logical (e.g. enabledGestures).
v0.7
Release Date: March 4, 2021
- High-level API for dynamic map objects (see [MapObjectManager](/en/android/native/maps/reference/ru dgis) MapObjectManager).
- Methods visibleArea, visibleRect to get the visible area of the map.
- TrafficSource to display the traffic tiles on the map.
- Get geometry from TrafficRoute.
- Fixes in function signatures. Most of the methods now return non-nullable values.
v0.6.0
Release Date: February 15, 2021
- Split SDK into 2 artifacts. sdk-map - version for those who only need map and guide. sdk-full - more complete, contains a navigator. In build.gradle you need to specify the correct version (eg
implementation 'ru.dgis.sdk:sdk-map:0.6.0'
). - Map and controls are now available in the dark theme.
- Added logging level. By default, the SDK only writes Warning and more critical messages.
- Methods to calculate camera position and Zoom Level on a given geometry.
- Source for data with clustering.
- Added the ability to set coordinate with height for the marker.
- For dynamic objects on the map, added the ability to define custom data.
- Supported creating a marker with text, without an icon.
- Breaking change: the marker icon must be specified via style object. The formation of the icon marker style may take considerable time as it may require rasterization/compression of the image. We strongly recommend that you do this in the background thread and reuse MarkerStyle for the same type of markers.
v0.5.0
Release Date: February 4, 2021
- Fixed a bug with API keys (appeared as 403 from tile server).
- Audible notification about speeding in navigator.
- Getting traffic score in TrafficManager.
- The UI in the navigator.
v0.4.6
Release Date: January 26, 2021
- Muting other sounds when playing navigator instructions.
- Redesign of navigator UI.
- Bug fix.
v0.4.5
Release Date: January 20, 2021
- Returned map.camera.
v0.4.4
Release Date: January 19, 2021
- ViewportPoint renamed to ScreenPoint, ViewportSize -> ScreenSize.
- Layer fix for markers.
- Added GestureManager.
- Added ability to cancel Future.
- Changed the work with Any types (see example).
v0.4.3
Release Date: December 22, 2020
- Location marker tracking mode.
- Offline data support in downloads directory.
- Playback of voice prompts based on the speed on the route.
- searchById in the directory module.
- Added renderView property of MapView object.
v0.4.2
Release Date: December 15, 2020
- Voice instructions in navigator while navigating a route.
- Support map tilting gesture.
v0.4.1
Release Date: December 9, 2020
- New DgisSource added to work with 2GIS objects.
- Breaking change: DgisSourceCreator has been removed. Static methods of DgisSource should be used instead.
- In RouteParams added support for intermediate points.
v0.4.0
Release Date: December 3, 2020
- Reduced size of library.
- Map and navigator UI controls.
- Additional information about found route.
v0.3.3
Release Date: November 24, 2020
- Added ability to make a signature to markers.
- Additional attributes are available for directory objects.
- Breaking change: need to abandon tryCastTo methods* in favor of normal type casting.
- Reduced size of data in the library.
v0.3.2
Release Date: November 17, 2020
- The data needed to initialize the SDK is now hardcoded into the package. No more preinstalled data is needed.
- Displaying search results with generalization like in the mobile 2GIS.
- Work with FollowManager. Allows you to follow a point on the map.
- Online Data Source is selected by default for the map.
- Trained our 3D engine to work with SVG.
- Added the coordinate of the next maneuver in the streamer events.
v0.3.1
Release Date: November 9, 2020
- Drag support for map objects.
- RouteEditor allows choosing a route with a click.
- Route wiping when navigator is launched.
- Fixes for ETA.
v0.3.0
Release Date: November 2, 2020
- Added methods of displaying markers on map.
- Notification of maneuvers, cameras, street, time to the end of the route, etc..
- Getting information about objects by clicking on the map.
v0.2.2
Release Date: October 27, 2020
- Fixed bug with ClassLoader while using sharedUserId.
- Found route can be get the distance in meters through
route.length
. - Added handler to reduce memory consumption.
MapView
has a new handler to handleTouchEventsObserver
.
v0.2.1
Release Date: October 20, 2020
- [Display current location marker](/en/android/native/maps/examples#nav-lvl1--Display_current_location marker).
- Added use of API key.
- Fixed HTTPS functionality.
NavigationManager
interface was changed.
v0.2.0
Release Date: October 8, 2020
- Added custom geoposition source.
- [Work with objects from GeoJSON](/en/android/native/maps/examples#nav-lvl1-- %D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5*%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%BE%D0%B2*%D0%B8%D0%B7_GeoJson).
- Search about route display on map.
v0.1.2
Release Date: September 22, 2020
- Add custom geometries.
More info: https://telegra.ph/NativeSDK-012-09-22
v0.1.1
Release Date: September 15, 2020
- Dark map theme.
More info: https://telegra.ph/NativeSDK-011-09-15
v0.1.0
Release Date: September 8, 2020
- Online map.
- API change for SDK initialization.
- Hybrid directory (online + offline).
More info: https://telegra.ph/NativeSDK-010-09-08
v0.0.1
Release Date: August 21, 2020
- Online guide.