Релизы
12.8.1 (2025-08-26)
🌟 Новые возможности
- SDK адаптирован к использованию c Dynamic Feature Delivery. NB! При использовании стандартного способа инициализации, когда ключ для SDK берется из ассетов приложения, ключ должен находиться в ассетах feature-модуля.
🛠 Исправления
- Исправлены редкие ошибки при загрузке нативной библиотеки (.so), приводившие к
UnsatisfiedLinkError
в некоторых сессиях.
12.8.0 (2025-08-14)
🌟 Новые возможности
- Добавлена поддержка армянского языка на карте, в справочнике и при построении маршрутов. Также добавлены голосовые пакеты уведомлений на армянском языке.
- В TrafficRouter добавлена возможность задавать тип поисковика маршрутов (онлайн, офлайн или гибрид) с помощью RouterType.
- В NavigationManager и RouteEditor добавлена возможность указывать поисковик маршрутов (TrafficRouter).
🛠 Исправления
- Добавлена опция линковщика для установки размера страницы памяти 16 КБ при сборке библиотеки.
- Данные о пробках через источник TrafficSource теперь не запрашиваются и не обновляются в фоновом режиме приложения.
- Исправлена утечка памяти в SearchLayout, которая происходила при смене конфигурации устройства.
12.7.2 (2025-06-20)
🌟 Новые возможности
- DirectoryObject.platformIds — информация об идентификаторах платформ общественного транспорта в объекте справочника.
- EntranceInfo.entranceNumber — номер входа на станцию общественного транспорта.
🛠 Исправления
- DirectoryObject.routeInfos теперь возвращает корректную информацию о маршрутах, проходящих через определённую платформу общественного транспорта.
- DirectoryObject.entrances теперь возвращает корректную информацию о входах в метро.
12.7.0 (2025-06-03)
🌟 Новые возможности
- DirectoryObject.routeInfos — информация о маршрутах общественного транспорта в объекте справочника.
- ItemMarkerInfo.tradeLicense — информация о торговой лицензии организации в маркере.
- SearchResult.nearbyRequested — признак в результатах поиска, что при поиске были запрошены объекты поблизости.
- TrafficRoute.routeTollPaymentInfos — информация о стоимости проезда по платным участкам маршрута.
- RoadMacroGraph — пакет глобального дорожного графа будет удалён в следующих версиях. Вы можете строить маршруты между регионами на основе скачанных офлайн-данных.
🗺 Изменения в стилях карты
- Заново выгрузите стили: в навигаторе исправлено отображение иммерсивных дорог и тумана.
12.6.3 (2025-05-13)
🛠 Исправления
-
Оптимизирована работа TrafficSource:
- Тайлы с пробками запрашиваются при изменении масштаба карты и по таймеру.
- Уровень пробок в баллах обновляется при смене региона и по таймеру.
-
Улучшена производительность карты при добавлении полигонов с б ольшим количеством вершин через MapObjectManager.
12.6.2 (2025-04-23)
🛠 Исправления
- Исправлено отображение динамических объектов, добавленных через MapObjectManager, на некоторых устройствах Huawei.
12.6.0 (2025-04-17)
🌟 Новые возможности
- В источник геопозиции DefaultLocationSource добавлена возможность настроить использование сервиса Radar API для геопозиционирования ус тройства по точкам доступа Wi-Fi и сотовым вышкам. Настроить использование Radar API можно через RadarApiSettings. Подробнее см. в разделе Использование Radar API.
- TextStyle.suppressOnOverlap — опция для скрытия текста подписи маркера при пересечении с другими объектами.
🛠 Исправления
- Исправлено обновление генерализации при изменении атрибутов объектов, добавленных через метод MapObjectManager.withGeneralization.
- Исправлена ошибка, при которой приложение падало при логировании сетевых запросов.
12.5.0 (2025-03-25)
🌟 Новые возможности
- SearchQueryBuilder.setLocale — метод для задания локали, в которой выполняется поисковый запрос.
- DirectoryObject.group — объединение объектов разного типа в одной карточке. Например, карточка здания суда содержит информацию о здании как геообъекте и о суде как организации в здании.
- SearchQueryWithInfo.rubrics — список рубрик, по которым производится запрос.
- PackedSearchQuery.locale — локаль для поискового запроса.
🛠 Исправления
- Исправлена ошибка, при которой маркер местоположения, добавленный через MyLocationMapObjectSource, исчезал при первом перелёте камеры.
- Исправлено отображение информации о маршруте на карте при направлении те кста справа налево (RTL) для источника данных RouteEditorSource.
- Изменены настройки кеширования данных из источника на маршруте. Теперь данные кешируются на расстоянии 4000 метров впереди от текущей позиции на маршруте вместо 20000.
🗺 Изменения в стилях карты
- Следует заново выгрузить стили: исправлено отображение информации о маршруте на карте при направлении текста справа налево.
12.4.3 (2025-02-19)
🌟 Новые возможности
- Projection.distanceOnMap — метод для вычисления расстояния между точками на карте, которые соответствуют указанным точкам на экране.
- Projection.distanceOnScreen — метод для вычисления расстояния между точками на экране, которые соответствуют указанным точкам на карте.
🛠 Исправления
- Исправлено отображение окружности на карте при добавлении объекта Circle в MapObjectManager.withClustering и MapObjectManager.withGeneralization.
12.4.0 (2025-01-30)
🌟 Новые возможности
- SpeechRecognizer и DefaultSpeechRecognizer — возможность запускать распознавание речи и обрабатывать результаты через функции обратного вызова.
- Map.sublayerAttributes — возможность переопределения атрибутов конкретного слоя карты.
- SearchHistory — класс для работы с историей поисковых запросов: чтения, добавления и удаления записей с информацией о результате работы поиска и поисковых подсказках.
- SearchQueryBuilder.fromOrgId — метод для формирования поискового запроса по идентификатору организации.
- SearchQueryBuilder.fromBuildingId — метод для формирования поискового запроса по идентификатору здания.
- SearchQueryBuilder.fromGeoPoint — метод для формирования поискового запроса c центром области поиска.
- SearchQueryBuilder.setGeoPoint и SearchQueryBuilder.setRadius — методы для установки центра области поиска и радиуса при формировании поискового запроса.
- DirectoryObject.orgInfo — информация об организации в объекте справочника.
- MyLocationMapObject.setModelData — метод для установки 3D-модели маркера геопозиции.
- BaseCamera.viewPoint — возможность изменения точки обзора камеры относительно размера области видимости карты.
- AnimationSettings.animationName — возможность переключения анимации 3D-модели по названию.
- Добавлена инструкция по работе с UI-элементами через Android Compose.
- Добавлена инструкция по управлению стилями карты.
🛠 Исправления
- Теперь положение 3D-модели совпадает с направлением камеры, если значение угла поворота не задано в ModelMapObject.mapDirection.
- Исправлена некорректная установка атрибутов для генерализуемых объектов, добавленных на карту через MapObjectManager.withClustering. Теперь изменение атрибутов объектов на определённом zoom-уровне распространяется на все уровни.
- Исправлена работа атрибута для управления видимостью объекта на карте SimpleMapObject.isVisible при генерализации и кластеризации объектов.
🗺 Изменения в стилях карты
- Исправлен приоритет обработки нажатий между маркером геопозиции и зданиями на карте.
12.3.0 (2024-12-18)
🌟 Новые возможности
- ModelMapObject и ModelMapObjectOptions — классы для создания и настройки динамических объектов с 3D-моделями. Вы можете добавить данные объекты на карту с помощью MapObjectManager.
- ModelData и методы createModelData(context, loader), createModelData(context, data), modelDataFromAsset(context, assetName) — возможность загрузки пользовательских 3D-моделей.
- Теперь при добавлении TrafficSource на карту тайлы с пробками запрашиваются на основе области видимости экрана независимо от обновления конфигурационного файла SDK.
- DirectoryObject.rubricIds — идентификаторы рубрик в объекте справочника.
- Добавлена возможность отслеживать изменения в стабильной (AndroidAutoMapSession.onStableAreaChanged) и видимой (AndroidAutoMapSession.onVisibleAreaChanged) области карты в Android Auto.
- FreeRoamSelector и NavigationManager.freeRoamSelector — возможность включения и выключения перевода навигатора в режим
FreeRoam
при слишком долгом перестроении маршрута. - RouteRebuilder и NavigationManager.routeRebuilder — возможность включения и выключения поиска нового маршрута при сходе с текущего маршрута.
- TrafficRouter.requestRoute — возможность поиска маршрута по ранее сериализованным параметрам.
🛠 Исправления
- Исправлено дублирование числа филиалов для категорий организаций в Suggest.subtitle.
- Исправлена ошибка получения координат объекта при обработке клика на Marker, добавленный на ка рту перед первичной загрузкой карты.
- Исправлено отображение 3D-модели маркера геопозиции навигатора для всех типов маршрута, кроме пешеходного. Для пешеходного маршрута отображается обычная модель маркера геопозиции.
- Обновлена конфигурация навигатора для улучшения работы при плохом сигнале GPS.
🗺 Изменения в стилях карты
- Добавлен слой для отображения динамических 3D-моделей.
12.2.1 (2024-12-03)
🛠 Исправления
- Исправлены ошибки, которые приводили к снижению производительности при отображении большого количества объектов на карте.
12.2.0 (2024-11-15)
🌟 Новые возможности
- AnimationSettings — класс для настройки анимаций объектов карты. Применяется для объектов с типами слоя
3D model
иDirectional model
. - MyLocationMapObject.animationSettings — возможность настройки анимаций для маркера геопозиции, если в качестве модели в стилях загружена анимированная модель.
- MyLocationMapObject.objectAttributes — возможность настройки атрибутов стилей для маркера геопозиции. Возможные значения атрибутов можно увидеть в стилях для соответствующего слоя.
- RoadEventMapObject.animationSettings — возможность настройки анимаций для дорожных событий, если в качестве модели в стилях загружена анимированная модель.
- RoadEvent.id — идентификатор дорожного события.
- ParkingControlModel — модель для удобного переключения видимости парковок на карте.
- ItemMarkerInfo.rubricIds — идентификаторы рубрик, к которым относится объект маркера.
- TextHorizontalAlignment — настройка для выравнивания надписи по горизонтали в Marker через TextStyle.
- RouteMapObjectsProvider и NavigationManager.routeMapObjectsProvider — класс для получения объектов маршрута на карте.
- RouteMapObject.roadEventObjects — дорожные события на карте для соответствующего маршрута.
- MyLocationMapObjectSourceProvider и NavigationManager.myLocationMapObjectSourceProvider — класс для получения источника маркера геопозиции в навигаторе.
🛠 Исправления
- Исправлен ряд ошибок для корректного отображения карты в Android Auto.
- Доработан механизм получения названия объекта маркера ItemMarkerInfo.title. Теперь учитывается, что маркер может быть без названия.
- Исправлена потенциальная проблема при инициализации карты, когда стиль устанавливался раньше, чем завершался процесс инициализации.
- Исправлено потенциальное зависание в MapObjectManager при частом добавлении и удалении объектов через метод MapObjectManager.removeAndAddObjects.
- Исправлена ошибка, при которой для некоторых регионов не работало отображение дорожных событий на карте.
- Исправлено отображение стрелок маршрута относительно иммерсивных дорог реальной ширины в режиме навигатора.
- Исправлена потенциальная проблема, при которой не отображались баблы полосности на маршруте в режиме навигатора.
🗺 Изменения в стилях карты
- Исправлены ошибки в стилях при отображении маркера геопозиции в режиме навигатора с иммерсивными дорогами реальной ширины.
- Исправлены ошибки в стилях при отображении этажных планов зданий.
10.8.0 (2024-11-02)
🛠 Исправления
- Исправлено потенциальное зависание в MapObjectManager при частом добавлении и удалении объектов через метод MapObjectManager.removeAndAddObjects.
- Исправлена ошибка, при которой приложение падало при логировании сетевых запросов.
- Исправлена ошибка, при которой для некоторых регионов не работало отображение дорожных событий на карте.
12.1.0 (2024-09-24)
🌟 Новые возможности
- ItemMarkerInfo.title — название объекта маркера.
- AndroidAutoMapSession.onSurfaceAvailable и AndroidAutoMapSession.onSurfaceDestroyed — методы для предоставления пользовательского объекта
Surface
в Android Auto для отрисовки дополнительного контента. - Отображение копирайта в Android Auto.
- DirectoryObject.chargingStation — информация о станциях зарядки электромобилей в объекте справочника.
🛠 Исправления
- DgisSource.createDgisSource теперь возвращает гибридный источник тайлов карты по умолчанию в
Full
версии SDK. - Различные улучшения работы иммерсивных дорог реальной ширины в режиме навигатора.
🗺 Изменения в стилях карты
- Исправлены ошибки в стилях при отображении иммерсивных дорог реальной ширины.
- Исправлено отображение тумана при различных углах наклона карты.
12.0.0 (2024-08-19)
🌟 Новые возможности
-
Иммерсивные дороги реальной ширины отображаются в режиме навигации, если:
-
Поле Map.graphicsPreset установлено в значении
IMMERSIVE
. -
HttpCache
включен с помощью HttpOptions.useCache.
На текущий момент дороги реальной ширины доступны только в некоторых крупных городах России, ОАЭ и Саудовской Аравии.
-
-
Отображение тумана для отсечения далеких объектов карты при наклоне камеры.
-
Пакет
ru.dgis.sdk.androidauto
для интегрирования SDK в Android Auto. -
BaseCamera.viewportRestriction для установки области видимости камеры.
-
MapOptions.graphicsPreset для установки режима графики через GraphicsPreset при инициализации карты.
-
Map.graphicsPreset для установки режима графики через GraphicsPreset для созданной карты.
-
Map.graphicsPresetHint для получения рекомендуемого режима графики для данного устройства.
-
Возможность наклона карты до 70 градусов, начиная с 18 zoom-уровня.
-
RasterUrlTemplate для задания шаблона URL для запроса растровых тайлов. Может иметь два значения: DefaultRasterUrlTemplate для общего шаблона и WmsRasterUrlTemplate для растровых тайлов стандарта WMS.
-
MapLocationController.mapToNorthOrientation — установка принудительной ориентации карты на север.
-
RouteCamera.maxSpeedLimit — cкорость в м/с, превышение которой фиксируется камерой.
-
NavigationFollowController.cameraBehaviour — режим слежения камеры за маркером геопозиции в навигаторе.
-
При отображении дорожных событий и данных о пробках на маршруте теперь учитывается высота рельефа.
-
Если текущая позиция на маршруте находится на расстоянии более 500 метров от следующего маневра, произносится фраза «Двигайтесь прямо».
-
Поддержаны звуковые инструкции для велосипедных и самокатных перекрёстков.
-
RouterType для установки типа поисковика в AlternativeRoutesProviderSettings для поиска альтернативных маршрутов.
-
Параметр
toRoutePoint
в методе MillisecondsRouteAttribute.calculateDuration для вычисления длительности движения по участку маршрута до конкретной точки. -
Методы TerritoryManager.findByPoint и TerritoryManager.findByRect для фильтрации доступных для скачивания офлайн регионов по
GeoPoint
иGeoRect
.
❗ Ломающие изменения
KeySource
,KeyFromAsset
,KeyFromFile
иKeyFromString
перенесены вru.dgis.sdk.platform
.VendorConfig
,VendorConfigFromAsset
,VendorConfigFromFile
иVendorConfigFromString
перенесены вru.dgis.sdk.platform
.LogOptions
,LogLevel
,LogMessage
иLogSink
перене сены вru.dgis.sdk.platform
.HttpOptions
,Certificate
,CertificateFromAsset
,CertificateFromFile
,SystemCertificate
иHttpProxyOptions
перенесены вru.dgis.sdk.platform
.MyLocationController
иMapLocationController.myLocationIndicatorController
удалены. Для настройки источника маркера геопозиции используйте MyLocationControllerSettings. В NavigationView теперь не происходит подмена источника геопозиции.- В EventsProcessingSettings.rotationCenter и EventsProcessingSettings.scalingCenter добавлено значение
GEO_POSITION
для установки режима работа жеста относительно геопозиции. Чтобы задать позицию, относительно которой будет работать жест, используйте метод GestureManager.setTargetGeoPoint. - Meter перенесен из модуля
ru.dgis.sdk.map
вru.dgis.sdk
. - Значение
CameraState.FOLLOW_POSITION
удалено. Вместо него ориентируйтесь на значение Camera.behaviour. - SuggestedType, SuggestorType и ObjectType расширены значениями и теперь соответствуют результатам Places API.
- Метод
createRasterTileDataSource
удален. Добавлен новый источник растровых тайлов RasterTileSource с возможностью задания прозрачности растровых тайлов. AudioVolume
удален. Теперь вы можете задавать громкость инструкций от 0 до 100 через AudioSettings.volume.- RouteMapObjectDisplayFlag.IMMERSIVE_ROUTE_PARTS — флаг для использования иммерсивной геометрии для отрезков маршрута.
🛠 Исправления
- Оптимизировано кеширование дорожных событий при отображении на карте.
- Исправлены артефакты при повороте экрана при включении
Vulkan
. - Исправлена ошибка, при которой варианты проезда не отображались, если среди маршрутов на общест венном транспорте предлагался нерабочий вариант.
- Исправлен учёт пройденного расстояния вдоль альтернативного маршрута.
- Доработано отображение остановок на маршруте на общественном транспорте.
- Доработано стирание маршрута при достижении финишной точки маршрута.
- Исправлено отображение активного маршрута при плохом сигнале GPS.
- Не произносятся голосовые инструкции при навигации при плохом сигнале GPS.
- Не озвучивается расстояние до следующей камеры, если оно меньше 150 метров.
- Не озвучиваются голосовые инструкции при старте навигации.
- Не озвучивается расстояние до камер контроля перекрёстка, полосы общественного транспорта и разметки.
- Инструкция навигации «До конца маршрута осталось» не озвучивается, если впереди по маршруту есть другие инструкции.
- Не озвучиваются пешеходные препятствия и подтипы дорог для непешеходных маршрутов.
🗺 Изменения в стилях карты
- Добавлены слои с иммерсивными дорогами реальной ширины.
- Доработаны различные слои, чтобы они корректно отображались при наличии иммерсивных дорог реальной ширины на карте.
- Обновлены дизайны маркера геопозиции в обычном режиме и в режиме навигации. Также отображение маркера в дневной и ночной темах приведены к одному виду.
- Поддержана новая ветка Московского метро МЦД-4А (литера А).
- Исправлены стили веток Московского метро МЦД-3, МЦД-4, МЦД-4А и МЦД-5.
- Добавлены подписи остановок на маршруте общественного транспорта.
- Добавлены подписи остановок при просмотре полного маршрута выбранного общественного транспорта.
Миграция с версий 10.x на 12.х
Для всех типов Mobile SDK:
- Заново выгрузить стили.
- Для корректного отображения маркера геопозиции необходимо скопировать соответствующие слои.
KeySource
,KeyFromAsset
,KeyFromFile
иKeyFromString
перенесены вru.dgis.sdk.platform
.VendorConfig
,VendorConfigFromAsset
,VendorConfigFromFile
иVendorConfigFromString
перенесены вru.dgis.sdk.platform
.LogOptions
,LogLevel
,LogMessage
иLogSink
перенесены вru.dgis.sdk.platform
.HttpOptions
,Certificate
,CertificateFromAsset
,CertificateFromFile
,SystemCertificate
иHttpProxyOptions
перенесены вru.dgis.sdk.platform
.MyLocationController
иMapLocationController.myLocationIndicatorController
удалены. Для настройки источника маркера геопозиции используйте MyLocationControllerSettings. В NavigationView теперь не происходит подмена источника геопозиции.- В EventsProcessingSettings.rotationCenter и EventsProcessingSettings.scalingCenter добавлено значение
GEO_POSITION
для установки режима работа жеста относительно геопозиции. Для задания позиции, относительно которой будет работать жест, используйте метод GestureManager.setTargetGeoPoint. - Meter перенесен из модуля
ru.dgis.sdk.map
вru.dgis.sdk
. - Удалено значение
CameraState.FOLLOW_POSITION
. Вместо него ориентируйтесь на значение Camera.behaviour. - SuggestedType, SuggestorType и ObjectType расширены значениями и теперь соответствуют результатам Places API.
- Метод
createRasterTileDataSource
удален. Добавлен новый источник растровых тайлов RasterTileSource с возможностью задания прозрачности растровых тайлов.
Дополнительно для полной версии:
- Для отображения иммерсивных дорог реальной ширины и для корректного взаимодействия остальных объектов с иммерсивными дорогами в режиме навигации необходимо выгрузить последние стили Mobile SDK и применить свои настройки.
AudioVolume
удален. Теперь вы можете задавать громкость инструкций от 0 до 100 через AudioSettings.volume.- RouteMapObjectDisplayFlag.IMMERSIVE_ROUTE_PARTS — флаг для использования иммерсивной геометрии для отрезков маршрута.
10.7.0 (2024-08-13)
🌟 Новые возможности
- CustomDashboardButton и DashboardButtonAbsent для настройки кнопки добавления дорожных событий в дашборде навигатора.
10.6.0 (2024-08-07)
🌟 Новые возможности
- PackageInfo.finalSizeOnDisk — размер места на диске, которое территория занимает после установки, в байтах.
- PackageInfo.currentSizeOnDisk — размер места на диске, которое занимают установленные файлы территории на данный момент, в байтах.
🛠 Исправления
- Исправлено обновление позиции в дереве кластеризации через MapObjectManager.withClustering при изменении позиции маркера.
- Обновлён дизайн копирайта снимка карты, полученного методом MapView.takeSnapshot.
- В NavigationView UI-элемент спидометра теперь отображается при навигации по велосипедным маршрутам.
- В NavigationView UI-элемент слежения за позицией теперь не скрывается при пешей навигации.
10.5.0 (2024-06-05)
🌟 Новые возможности
- В настройках ключа можно задавать каскадный
appId
. Благодаря этой настройке вы можете привязать ключ не к конкретному приложению, а к группе приложений с одинаковой шаблонной частью в идентификаторе. - Обновлён дизайн копирайта.
- Добавлен TiltSettings.maxParallelsDeviationDeg для настройки жеста наклона карты.
🛠 Исправления
- Исправлена работа канала MapView.fpsChannel.
- При отображении маркеров с помощью Marker текстовые подписи не перекрывают друг друга.
- Исправлено отображение маркера геопозиции, когда перестают поступать данные от датчика направления.
10.4.0 (2024-05-20)
🌟 Новые возможности
- Добавлен DGis.initialize с параметром для переопределения аудиодрайвера для воспроизведения звуков SDK. Добавлен интерфейс AudioDriver для задания платформенной реализации аудиодрайвера.
- ZoomFollowSettings.speedRangeToStyleZoomFreeRoamSequence стал сеттером.
🛠 Исправления
- Исправлена ошибка, при которой изменение этажа через IndoorBuilding.activeLevelIndex не влияло на отображение IndoorControl.
- Исправлена обработка жестов, когда карта работает в фоновом режиме.
- В NavigationView источник геопозиции заменяется на источник с контроллером навигатора только при старте навигации.
❗ Ломающие изменения
- В объект карты Map теперь можно добавить только один источник текущего местоположения MyLocationMapObjectSource.
10.3.0 (2024-05-06)
🌟 Новые возможности
- Теперь информация о пробках в регионах обновляется независимо от обновления конфигурационного файла SDK.
- Теперь при zoom-уровне выше 2 карту нельзя сдвинуть для отображения пустых полос сверху и снизу.
- Добавлен арабский голосовой пакет для навигатора.
🛠 Исп равления
- Исправлена работа кластеризации через MapObjectManager.withClustering. Теперь иерархия кластеров перестраивается, если позиция одного из маркеров изменилась через Marker.position.
- Исправлена некорректная обработка тапа в Marker с Lottie-анимацией.
- Map.dataLoadingStateChannel больше не зависает в состоянии
loading
при режиме слежения за геопозицией. - Исправлена ошибка, при которой
sources.jar
в релизном пакете генерировался пустым. - Исправлено отображение дашборда в NavigationView в режиме
FreeRoam
.