Release notes
Важно: Поддержка версий API, описанных ниже, прекращена. Используйте версии 10.0 и выше. Cм. инструкции по миграции с более низких версий.
7.4.0 (2023-11-15)
🌟 Новые возможности
- Добавлены
MarkerOptions.iconAnimationMode
иMarker.iconAnimationMode
для возможности задания режима анимации в маркерах. Режим может быть обычным или зацикленным. - В
DGis.initialize
добавлен параметрplatformHttpClient
для задания пользовательской реализации сетевого клиента. Для переопределения сетевого клиента нужно сделать реализацию интерфейсаHttpClient
.
🛠 Исправления
- Исправлена работа метода
SimpleClusterObject.setIcon
при первом вызове. - Исправлена работа кластеризации через
MapObjectManager.withClustering
, если передать дробные значенияminZoom
иmaxZoom
. - Обновлен логотип 2GIS в копирайте на снапшотах карты.
- В
NavigationView
при отображении полного маршрута отображается только оставшаяся часть маршрута. - По умолчанию отключено кэширование тайлов
FreeRoam
при навигации для уменьшения запросов к бэкендам.
7.3.1 (2023-08-16)
🛠 Исправления
- Теперь при формировании запроса в справочник через
SearchQueryBuilder
для определения локали всегда берется первое значение из методаLocaleManager.locales
, если не удалось определить локаль по области поиска.
7.3.0 (2023-08-07)
🛠 Исправления
- Теперь при формировании запроса в справочник через
SearchQueryBuilder
для определения локали не используется текущая геопозиция пользователя, а берется первое значение из методаLocaleManager.locales
, если вSearchQueryBuilder
явно не задана область для поиска. - Исправлена ошибка, возникающая при обращении к полям
SimpleClusterObject
при формировании кластера в реализации методаSimpleClusterRenderer.renderCluster
.
7.2.1 (2023-07-31)
🌟 Новые возможности
- Добавлены два метода
SearchQueryBuilder.fromRubricIds
иSearchQueryBuilder.fromQueryTextAndRubricIds
для создания поисковых запросов с фильтрацией по идентификаторам рубрик. - Добавлено новое поле
DirectoryObject.tradeLicense
с информацией о лицензии организации.
7.1.0 (2023-07-20)
🛠 Исправления
- Поддержана работа справочника с новым форматом ключей.
- Исправлено падение при изменении доступности GPS при использовании
DefaultLocationSource
. - Исправлен расчет оставшегося рабочего времени организации в
Directory.workStatus
при офлайн поиске. - Контрол
TUGC
в режимеFreeRoam
доступен только при добавленииRoadEventSource
на карту.
5.4.0 (2023-07-20)
🛠 Исправления
- Поддержана работа справочника с новым форматом ключей.
5.3.1 (2023-06-27)
🛠 Исправления
- Исправлено падение при изменении доступности GPS при использовании
DefaultLocationSource
.
5.3.0 (2023-06-19)
🌟 Новые возможности
- Появилась возможность задавать исключаемые области через
ExcludedArea
при поиске маршрутов.
🛠 Исправления
- Исправлено потенциальное падение при добавлении маркера на карту с подписью через
Marker
.
Миграция с версий 5.x на 7.x
Для всех типов Mobile SDK:
- Необходимо заново выгрузить стили.
- Методы
DgisSource.createOnlineDgisSource
иDgisSource.createOfflineDgisSource
удалены. Вместо них нужно использоватьDgisSource.createDgisSource
с дополнительным параметромDgisSourceWorkingMode
- режим работы карты. Сейчас доступно четыре режима работы:ONLINE
,OFFLINE
,HYBRID_ONLINE_FIRST
иHYBRID_OFFLINE_FIRST
. FollowController
теперь возвращаетStyleZoom
, а неZoom
.FollowValue.ZOOM
переименован вFollowValue.STYLE_ZOOM
.ZoomFollowController
переименован вStyleZoomFollowController
.ZoomToTiltRelation
переименован вStyleZoomToTiltRelation
.SpeedRangeToZoom
переименован вSpeedRangeToStyleZoom
.- Метод
Projection.screenToMap
теперь вместо исключения возвращает пустое значение, если точка находится за пределами карты. - Методы
BaseCamera.setPadding
иBaseCamera.setPositionPoint
удалены. EnumCameraPositionPointChangeBehaviour
также удален. ПоляBaseCamera.padding
иBaseCamera.positionPoint
теперь являются сеттерами. - Методы
Camera.animatedMoveStarted
иCamera.animatedMoveFinished
уда лены. Вместо них можно использовать каналCamera.stateChannel
. - Каналы
IndoorControlModel.levelNames
иIndoorControlModel.activeLevelIndex
переименованы вIndoorControlModel.levelNamesChannel
иIndoorControlModel.activeLevelIndexChannel
соответственно. МетодIndoorControlModel.onLevelClicked
удален. МетодIndoorControlModel.isMarkedLevel
переименован вIndoorControlModel.isLevelMarked
.
Дополнительно для полной версии:
- Изменены названия в
ZoomFollowSettings
, чтобы лучше соответствовать назначению. - Метод
Model.applyBetterRoute
удален. Вместо него появился методModel.betterRouteResponse
и enumBetterRouteResponse
для работы с альтернативными маршрутами. - Удалено значение
State.FREE_ROAM
. Теперь для определения, что навигатор в режиме Free Roam, нужно смотреть на значениеRouteInfo.routeBuildOptions
- оно должно быть пустым.
7.0.0 (2023-06-16)
🌟 Новые возможности
- Добавлена возможность устанавливать Lottie-анимацию у маркера через
Marker.icon
. Добавлен методimageFromLottieJSON
. МетодimageFromAsset
поддерживает JSON-файл с Lottie-анимацией. - В
SearchResult
добавлено полеdynamicFilters
- динамические фильтры, которые можно дополнительно применить для поисковой выдачи. - В
DirectoryFilter
добавлено полеdynamic
для передачи динамических фильтров. - Добавлен метод
BaseCamera.maxTiltRestriction
для задания и получения функции зависимости максимального угла наклона камеры от стилевого zoom-уровня. - Добавлена возможность создать
MapObjectManager
с генерализацией объектов черезMapObjectManager.withGeneralization
. - Добавлен метод
Projection.screenToMapClipped
, который возвращает ближайшую точку карты к проекции указанной точки экрана. - В режиме навигатора теперь отображаются альтернативные маршруты, которые могут быть предложены как маршрут лучше.
Model.betterRouteChannel
— канал для оповещений о появлении альтернативного маршрута.Model.betterRouteResponse
— метод для подтверждения альтернативного маршрута. Маршруты настраиваются с помощьюNavigationManager.alternativeRoutesProviderSettings
. - Добавлен метод
Voice.playWelcome
для воспроизведения образца голоса в навигаторе. - В
RoutePointKind
добавлено больше типов для идентификации точечных объектов на маршруте. - Появилась возможность задавать исключаемые области при поиске маршрутов через
ExcludedArea
.
❗️ Ломающие изменения
- Методы
DgisSource.createOnlineDgisSource
иDgisSource.createOfflineDgisSource
удалены. Вместо них нужно использоватьDgisSource.createDgisSource
с дополнительным параметромDgisSourceWorkingMode
- режим работы карты. Сейчас доступно четыре режима работы:ONLINE
,OFFLINE
,HYBRID_ONLINE_FIRST
иHYBRID_OFFLINE_FIRST
. FollowController
теперь возвращаетStyleZoom
, а неZoom
.FollowValue.ZOOM
переименован вFollowValue.STYLE_ZOOM
.ZoomFollowController
переименован вStyleZoomFollowController
.ZoomToTiltRelation
переименован вStyleZoomToTiltRelation
.SpeedRangeToZoom
переименован вSpeedRangeToStyleZoom
.- Метод
Projection.screenToMap
теперь вместо исключения возвращает пустое значение, если точка находится за пределами карты. - Методы
BaseCamera.setPadding
иBaseCamera.setPositionPoint
удалены. EnumCameraPositionPointChangeBehaviour
также удален. ПоляBaseCamera.padding
иBaseCamera.positionPoint
теперь являются сеттерами. - Методы
Camera.animatedMoveStarted
иCamera.animatedMoveFinished
удалены. Вместо них можно использовать каналCamera.stateChannel
. - Каналы
IndoorControlModel.levelNames
иIndoorControlModel.activeLevelIndex
переименованы вIndoorControlModel.levelNamesChannel
иIndoorControlModel.activeLevelIndexChannel
соответственно. МетодIndoorControlModel.onLevelClicked
удален. МетодIndoorControlModel.isMarkedLevel
переименован вIndoorControlModel.isLevelMarked
. - Изменены названия в
ZoomFollowSettings
, чтобы лучше соответствовать назначению. - Метод
Model.applyBetterRoute
удален. Вместо него добавлен методModel.betterRouteResponse
и enumBetterRouteResponse
для работы с альтернативными маршрутами. - Удалено значение
State.FREE_ROAM
. Теперь для определения, что навигатор в режиме Free Roam, нужно смотреть на значениеRouteInfo.routeBuildOptions
- оно должно быть пустым.
🛠 Исправления
- Уменьшен размер Full сборки за счет уменьшения зависимости Offline справочника от других модулей.
- Исправлены утечки памяти при разрушении карты с активным перелётом.
- Оптимизировали использование одного источника данных
DgisSource
, добавленного в 2 и более объектовMap
. - Исправили работу канала
Map.dataLoadingStateChannel
, который теперь учитывает любую работу с картой (добавление объектов, изменение темы, добавление источников данных и т.д.). - В случаях, когда точка позиции камеры расположена ближе к нижнему краю экрана, значение максимального угла наклона камеры может быть уменьшено.
- Теперь маршрут не будет отображаться на карте в режиме навигации до появления позиции на нем.
- Исправлен возврат в режим слежения при работе навигатора по умолчанию.