Перейти к основному содержимому

Релизы

13.2.0 (2026-01-22)

🌟 Новые возможности

🛠 Исправления

  • Исправлена ошибка построения офлайн-маршрутов между регионами.
  • Исправлена ошибка, из-за которой при отображении активного маршрута на карте не отображался активный бабл полосности.
  • Исправлена ошибка установки online источника карты.

🗺 Изменения в стилях карты

  • Повторно выгрузите стили: исправлено отображение баблов полосности в арабской локали.
  • Исправлены значения максимального zoom-уровня у всех зданий и деревьев.

13.1.0 (2025-12-17)

🌟 Новые возможности

  • Container.makeMapFactory() — асинхронный метод для создания фабрики IMapFactory.
  • DirectoryObjectView — UI-элемент для отображения полной информации об объекте справочника. Для настройки вы можете использовать DirectoryViewTheme.directoryObjectViewTheme. Для переопределения внутренних UI-элементов — фабрику IDirectoryObjectViewsFactory.
  • DirectoryObject.nearestParkingIds — свойство для получения списка ближайших парковок.
  • DirectoryObject.nearestStations — свойство для получения списка ближайших остановок или станций общественного транспорта.
  • DirectoryObject.nearestPlatforms — свойство для получения списка ближайших остановочных платформ.
  • NearestPlatform — класс с информацией о ближайшей остановочной платформе.
  • NearestPlatformTransitionType — типы переходов между ближайшими остановочными платформами.
  • NearestStation — класс с информацией о ближайшей остановке или станции общественного транспорта.
  • LabelingPriority — класс для управления приоритетом лейблинга (отображения подписи или иконки на карте).
  • Marker.labelingPriority, MarkerOptions.labelingPriority и SimpleClusterOptions.labelingPriority — свойства для управления приоритетом лейблинга маркера.
  • TextStyle.labelingPriority — свойство для управления приоритетом лейблинга подписи маркера.
  • MiniMapControlModel — класс модели для управления мини‑картой в навигационном UI-элементе.
  • RouteEditorRoutesInfo.error — свойство для получения детальной информации об ошибке при поиске маршрута.
  • RouterErrorInfo — класс для описания ошибки при построении маршрута.
  • RouterErrorCode — категории ошибок при построении маршрута.
  • RouterErrorSource — источники ошибок при построении маршрута.
  • Добавлен голосовой пакет с таджикским языком для навигатора.

🛠 Исправления

  • Исправлена утечка памяти при отображении пробок на карте.
  • Исправлены отступы, размеры и цвета для SwiftUI-элемента RoadEventCreatorView и UIKit-элемента IRoadEventCreatorUIView для создания дорожных событий.
  • Из сборки удалена библиотека CallKit, которая использовалась для отслеживания телефонных вызовов при воспроизведении голосовых инструкций в навигаторе.

🗺 Изменения в стилях карты

  • Повторно выгрузите стили: исправлено отображение стрелок входов в здание.
  • Добавлен слой Route camera direction для отображения луча направления камеры на маршруте.

12.10.0 (2025-12-19)

🌟 Новые возможности

🛠 Исправления

  • Исправлена ошибка построения офлайн-маршрутов между регионами.
  • Из сборки удалена библиотека CallKit, которая использовалась для отслеживания телефонных вызовов при воспроизведении голосовых инструкций в навигаторе.

13.0.0 (2025-10-13)

Важно

Если вы обновляете сборку с мажорной версии 12.x, см. инструкцию по миграции.

🌟 Новые возможности

❗ Изменения, влияющие на обратную совместимость

  • Для изоляции потоков и совместимости с Swift 6 в проект добавлен атрибут @MainActor и отмечены протоколы, структуры и функции как Sendable.

  • Минимальная поддерживаемая версия iOS обновлена до 16.0.

  • Основные изменения в SwiftUI-элементах:

    • Переименован основной слой карты MapViewOverlay в MapView и переименованы все методы для настройки слоя.
    • Переименовано свойство IMapFactory.mapViewOverlay в IMapFactory.mapView.
    • Переименована фабрика SwiftUI-элементов управления картой IMapControlViewFactory в IMapViewsFactory.
    • Переименованы методы SwiftUI-элементов для создания дорожных событий RoadEventCreatorView.
    • Переименованы методы SwiftUI-элементов для настройки отображения информации о дорожном событии RoadEventInfoView.
    • Переименованы пользовательские SwiftUI-маркеры и контейнеры на карте MapMarkerView, MapMarkerViewModel и MapMarkerViewOverlay в MarkerView, MarkerViewModel и MarkerOverlayView соответственно.
    • Переименовано свойство IMapFactory.mapMarkerViewOverlay в IMapFactory.markerOverlayView.
    • Переименован основной слой навигатора NavigatorView в NavigationView.
    • Переименован метод NavigatorView.navigatorViewFinishButtonCallback() в NavigationView.finishButtonCallback().
    • Переименована фабрика SwiftUI-элементов управления навигатором INavigatorViewFactory в INavigationViewFactory.
  • Основные изменения в UIKit-элементах:

    • Переименован основной слой карты IMapView в IMapUIView.
    • Переименовано свойство IMapFactory.mapView в IMapFactory.mapUIView.
    • Переименованы интерфейсы слоя обработки жестов IMapGestureView и IMapGestureViewFactory в IMapGestureUIView и IMapGestureUIViewFactory соответственно.
    • Переименовано свойство IMapFactory.gestureView в IMapFactory.gestureUIView.
    • Переименованы пользовательские UIKit-маркеры и контейнеры на карте IMarkerView, IMarkerViewFactory и IMarkerViewOverlay в IMarkerUIView, IMarkerUIViewFactory и IMarkerOverlayUIView соответственно.
    • Переименован объект IMapFactory.markerViewOverlay в IMapFactory.markerOverlayUIView.
    • Переименована фабрика UIKit-элементов управления картой IMapControlFactory в IMapUIControlsFactory.
    • Переименованы все публичные классы UIKit-элементов управления, моделей и их фабрик. Например, ZoomControl переименован в ZoomUIControl, TrafficControl переименован в TrafficUIControl, IndoorControl переименован в IndoorUIControl и т. д.
    • Переименована фабрика UIKit-элементов управления карточками дорожных событий RoadEventCardViewOptions в IRoadEventUIViewFactory.
    • Переименован объект IRoadEventCardView в IRoadEventInfoUIView.
    • Переименован объект ICreateRoadEventView в IRoadEventCreatorUIView.
    • Переименован объект RoadEventCardViewOptions в RoadEventInfoViewOptions.
    • Переименован основной слой навигатора INavigationView в INavigationUIView.
    • Переименована фабрика UIKit-элементов управления навигатором INavigationViewControlsFactory в INavigationUIControlsFactory.
    • Переименована фабрика UIKit-элементов управления картой INavigationMapControlsFactory в INavigationMapUIControlsFactory.
  • Теперь для отслеживания изменений состояний камеры используется единый канал BaseCamera.changed вместо отдельных каналов для каждого свойства. Заменены подписки и добавлена дополнительная фильтрация причин изменений.

  • Изменён способ создания некоторых классов:

    • Удалена функция getSystemMemoryManager. Чтобы получить объект для управления системной памятью, используйте метод SystemMemoryManager.instance().
    • Удалён конструктор SearchHistory. Чтобы получить объект истории поиска, используйте метод SearchHistory.instance().
    • Удалён конструктор RoadEventManager. Чтобы получить объект для работы с дорожными событиями, используйте метод RoadEventManager.instance().
    • Удалена функция getHttpCacheManager. Чтобы получить объект для управления HTTP-кешем, используйте метод HttpCacheManager.get().
    • Удалена функция getLocaleManager. Чтобы получить объект для управления локалями приложения, используйте метод LocaleManager.instance().
    • Удалён конструктор TrafficCollector. Чтобы получить объект для управления сервисом сбора информации о дорожном движении, используйте метод TrafficCollector.instance().
    • Удалена функция getAudioSettings. Чтобы получить объект для управления звуком приложения, используйте метод AudioSettings.get().
    • Удалена функция getPackageManager. Чтобы получить объект для работы с пакетами, используйте метод PackageManager.instance().
    • Удалена функция getTerritoryManager. Чтобы получить объект для работы с территориями, используйте метод TerritoryManager.instance().
    • Удалена функция getTerritoriesAlongRouteProvider. Чтобы получить объект для извлечения списка территорий вдоль маршрута, используйте конструктор TerritoriesAlongRouteProvider.
    • Удалена функция getVoiceManager. Чтобы получить объект для управления голосовыми пакетами, используйте метод VoiceManager.instance().
  • Свойство buildingLevels для получения этажных планов удалено из DirectoryObject.

  • Свойство DirectoryObject.buildingInfo теперь опциональное.

  • Свойство BuildingInfo.buildingId теперь обязательное и не может быть пустым.

  • Свойство LevelInfo.id теперь опциональное.

  • Изменён тип свойства PublicTransportDirectoryRouteInfo.color с Int? на Color?.

  • Метод SearchQueryBuilder.setGeoPoint() теперь принимает опциональный тип значения.

  • Метод SearchQueryBuilder.setRadius() теперь принимает опциональный тип значения.

  • Удалены функция getRoadMacroGraph и класс RoadMacroGraph. Теперь для построения офлайн-маршрутов между соседними регионами достаточно скачать пакеты нужных регионов.

  • Удалены класс для настройки позиции бабла с полосами на маршруте (LanesCalloutMapPosition и RouteMapObject.lanesCalloutPositions) и свойство в RouteMapObject.

  • Переименован класс UIntRouteLongAttribute в DoubleRouteLongAttribute.

  • Изменён тип свойства Route.trafficLights с VoidRouteAttribute на StringRouteAttribute.

  • Добавлен новый вид транспорта motorcycle (мотоцикл) в TransportType.

  • Добавлены параметры для настройки уровня масштабирования для стиля в конструктор SpeedRangeToStyleZoom.

  • Добавлены значения для пандусов rampDown, rampUp, smoothRampDown и smoothRampUp в RoadSubtype.

  • Добавлены новые значения позиций и ориентиров в CarInstructionCrossroadLandmark.

  • Добавлены значения цветов deepGreen и orange в TrafficSpeedColor.

  • Добавлен флаг crossing для отображения начала и конца переправы на маршруте в RouteMapObjectDisplayFlag.

  • Добавлен новый тип точки маршрута crossing (начало и конец переправы) в RoutePointKind.

  • Добавлены значения для оповещений о событиях betterRoute («маршрут лучше») и humps (искусственные дорожные неровности) в SoundCategory.

🛠 Исправления

  • Исправлена ошибка, из-за которой падало приложение при работе SearchManager.createSmartManager(), если не было скачанных территорий.

  • Добавлена поддержка моделей iPhone 17, iPhone 17 Pro, iPhone 17 Pro Max и iPhone Air с учётом их PPI при вычислении DPI.

  • Исправлена ошибка в истории поиска при многократном добавлении одного и того же элемента.

  • Исправлена проблема, из-за которой новые поисковые запросы не сохранялись в истории при достижении установленного лимита.

  • Добавлен фильтр для скрытия этажей зданий на карте, если их площадь на экране меньше определённого порога.

  • Исправлены звуковые оповещения в навигаторе:

    • Исправлена ошибка, из-за которой не озвучивалось предупреждение о камере «в спину».
    • Исправлена ошибка, из-за которой не озвучивались промофразы (при наличии корректного голосового пакета).
    • Добавлены звуковые оповещения о лестницах на маршруте.
    • Исправлена ошибка, при которой камеры контроля перекрёстка озвучивались как камеры контроля скорости.
    • Добавлены звуковые оповещения о перестроении маршрутов для велосипедов и самокатов.
  • Исправлены ошибки в работе навигатора при проблемах с GPS-сигналом:

    • Исправлена ошибка перелёта маркера текущей геопозиции при работе детектора слабого GPS-сигнала.
    • Исправлены ошибки, возникавшие при приближении пользователя к точке конца маршрута при нестабильном GPS-сигнале.
    • Добавлено отключение детектирования схода с маршрута при низкой точности GPS-сигнала.
    • Теперь при резком снижении точности GPS-сигнала во время работы навигатора геопозиция пользователя не переносится в другое место на карте.
  • Исправлены проблемы в работе навигатора:

    • Исправлена проблема, из-за которой на экране поиска маршрута не отображался бабл с информацией о времени и длине маршрута, если у одного из маршрутов отсутствовали уникальные отрезки.
    • Исправлена проблема, из-за которой в бабле альтернативного маршрута не обновлялась разница во времени движения, если при использовании навигатора пользователь не двигался.
    • Удалены названия съездов в баблах, если не указано направление движения или съезд ведёт к объекту с типом «аэропорт».
    • Исправлена проблема, из-за которой иконки дорожных событий не реагировали на нажатия.
    • Добавлена поддержка отображения и цветовой индикации пробок на грунтовых дорогах.
    • Исправлено дублирование иконок МЦК, МЦД, Аэроэкспресса и электричек в бабле маршрута с пересадками.
    • Исправлено некорректное отображение линии маршрута на перекрёстках.
    • Удалено отображение дополнительной иконки с полосами движения для камер, которые фиксируют непредоставление преимущества в движении пешеходам.
    • Исправлена ошибка притяжки геопозиции пользователя к маршруту при возврате на маршрут.
    • Исправлена ошибка, при которой падало приложение при перестроении пешеходного маршрута в режиме ведения по маршруту.
    • Исправлено поведение, при котором дополнительные иконки отображались на маршруте после истечения срока действия дорожного события.
    • Изменена логика отображения дополнительных иконок с полосами движения для подтверждённых дорожных событий.
    • Добавлено ограничение, при котором при перестроении маршрута в него не включаются платные дороги, если пользователь выбрал проезд только по бесплатным дорогам.
    • Добавлено отображение уведомлений о лестницах на панели с предполагаемым временем маршрута.
    • Теперь навигатор продолжает вести пользователя по маршруту и перестраивает его при необходимости, даже если была закрыта финишная панель (с кнопкой Завершить маршрут).
    • Изменена логика фильтрации полос: полосы, разрешающие движение прямо, не исключаются из баблов с полосами на маршруте.
    • Добавлена визуализация мигания пробок на маршруте при скорости 80–90 км/ч.
  • Исправлена вёрстка всех SwiftUI-элементов в NavigationView.

  • Исправлен возврат к слежению за позицией и уровнем масштабирования в NavigationView. Теперь камера и режим слежения восстанавливаются корректно при выходе из обзора маршрута.

🗺 Изменения в стилях карты

  • Повторно выгрузите стили: исправлены ошибки отображения пользовательских и иммерсивных объектов.
  • Обновлены все слои групп Roads для отображения иммерсивных дорог в основном режиме карты.
  • Добавлена группа Traffic v13.0.0 для отображения новых цветов тайлов с пробками.
  • Добавлена группа Car route line v13.0.0 для отображения автомобильных маршрутов на иммерсивных дорогах.

12.8.0 (2025-08-14)

🌟 Новые возможности

  • Добавлена поддержка армянского языка на карте, в справочнике и при построении маршрутов. Также добавлены голосовые пакеты уведомлений на армянском языке.
  • MiniMapView и NavigationMiniMapView — SwiftUI-элементы мини-карты для отображения на карте и в NavigatorView.
  • SearchResultItemView — SwiftUI-элемент мини-карточки объекта для поисковой выдачи. Содержит соответствующие темы оформления, локализацию и вспомогательные визуальные элементы и компоненты утилиты.
  • RoadEventCreatorView — SwiftUI-элемент для создания дорожных событий.
  • RoadEventInfoView — SwiftUI-элемент для отображения информации о дорожном событии.
  • IRoadEventViewFactory — фабрика для создания SwiftUI-элементов дорожных событий.
  • В TrafficRouter добавлена возможность задавать тип поисковика маршрутов (онлайн, офлайн или гибрид) с помощью RouterType.
  • В NavigationManager и RouteEditor добавлена возможность указывать поисковик маршрутов (TrafficRouter).

🛠 Исправления

  • Данные о пробках через источник TrafficSource теперь не запрашиваются и не обновляются в фоновом режиме приложения.
  • Улучшена вёрстка дашборда управления поездкой в NavigatorView: обновлены отступы, размеры кнопок, порядок и структура компонентов, а также исправлены значения высот элементов.
  • Изменены отступы блока манёвров в NavigatorView, чтобы сообщения о потере GPS-сигнала и перестроении маршрута отображались ниже на экране.

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 — пакет глобального дорожного графа будет удалён в следующих версиях. Вы можете строить маршруты между регионами на основе скачанных офлайн-данных.
  • SwiftUI-элементы для отображения сообщений об ошибках при построении маршрутов и для отображения выбора «маршрута лучше» в NavigatorView.

🗺 Изменения в стилях карты

  • Повторно выгрузите стили: в навигаторе исправлено отображение иммерсивных дорог и тумана.

12.6.3 (2025-05-13)

🛠 Исправления

  • Оптимизирована работа TrafficSource:

    • Тайлы с пробками запрашиваются при изменении масштаба карты и по таймеру.
    • Уровень пробок в баллах обновляется при смене региона и по таймеру.
  • Улучшена производительность карты при добавлении полигонов с большим количеством вершин через MapObjectManager.

12.6.0 (2025-04-17)

🌟 Новые возможности

  • TextStyle.suppressOnOverlap — опция для скрытия текста подписи маркера при пересечении с другими объектами.

🛠 Исправления

  • Исправлено обновление генерализации при изменении атрибутов объектов, добавленных через метод MapObjectManager.withGeneralization().
  • Исправлена ошибка, при которой приложение падало при логировании сетевых запросов.
  • Исправлена ошибка, при которой приложение падало при обработке жеста наклона карты.

12.5.0 (2025-03-25)

🌟 Новые возможности

  • SearchQueryBuilder.setLocale() — метод для задания локали, в которой выполняется поисковый запрос.
  • DirectoryObject.group — объединение объектов разного типа в одной карточке. Например, карточка здания суда содержит информацию о здании как геообъекте и о суде как организации в здании.
  • SearchQueryWithInfo.rubrics — список рубрик, по которым производится запрос.
  • PackedSearchQuery.locale — локаль для поискового запроса.
  • VoiceAssistantView — SwiftUI-элемент для управления голосовым вводом. Чтобы создать элемент, используйте метод IDirectoryViewsFactory.makeVoiceAssistantView.

🛠 Исправления

  • Исправлена ошибка, при которой маркер местоположения, добавленный через MyLocationMapObjectSource, исчезал при первом перелёте камеры.
  • Исправлено восстановление отображения маркера геопозиции после того, как приложение долго находилось в свернутом состоянии.
  • Исправлено отображение информации о маршруте на карте при направлении текста справа налево (RTL) для источника данных RouteEditorSource.
  • Изменены настройки кеширования данных из источника на маршруте. Теперь данные кешируются на расстоянии 4000 метров впереди от текущей позиции на маршруте вместо 20000.

🗺 Изменения в стилях карты

  • Повторно выгрузите стили: исправлено отображение информации о маршруте на карте при направлении текста справа налево.

12.4.3 (2025-02-19)

🌟 Новые возможности

  • Projection.distanceOnMap() — метод для вычисления расстояния между точками на карте, которые соответствуют указанным точкам на экране.
  • Projection.distanceOnScreen() — метод для вычисления расстояния между точками на экране, которые соответствуют указанным точкам на карте.

🛠 Исправления

12.4.0 (2025-01-30)

🌟 Новые возможности

🛠 Исправления

  • Теперь положение 3D-модели совпадает с направлением камеры, если значение угла поворота не задано в ModelMapObject.mapDirection.
  • Исправлена некорректная установка атрибутов для генерализуемых объектов, добавленных на карту через MapObjectManager.withClustering. Теперь изменение атрибутов объектов на определённом zoom-уровне распространяется на все уровни.
  • Исправлена работа атрибута для управления видимостью объекта на карте SimpleMapObject.isVisible при генерализации и кластеризации объектов.

🗺 Изменения в стилях карты

  • Исправлен приоритет обработки нажатий между маркером геопозиции и зданиями на карте.

12.3.0 (2024-12-18)

🌟 Новые возможности

  • ModelMapObject и ModelMapObjectOptions — классы для создания и настройки динамических объектов с 3D-моделями. Вы можете добавить данные объекты на карту с помощью MapObjectManager.
  • ModelData и IModelFactory — возможность загрузки пользовательских 3D-моделей.
  • Теперь при добавлении TrafficSource на карту тайлы с пробками запрашиваются на основе области видимости экрана независимо от обновления конфигурационного файла SDK.
  • DirectoryObject.rubricIds — идентификаторы рубрик в объекте справочника.
  • FreeRoamSelector и NavigationManager.freeRoamSelector — возможность включения и выключения перевода навигатора в режим FreeRoam при слишком долгом перестроении маршрута.
  • RouteRebuilder и NavigationManager.routeRebuilder — возможность включения и выключения поиска нового маршрута при сходе с текущего маршрута.
  • TrafficRouter.requestRoute — возможность поиска маршрута по ранее сериализованным параметрам.

🛠 Исправления

  • Исправлено дублирование числа филиалов для категорий организаций в Suggest.subtitle.
  • Исправлена ошибка получения координат объекта при обработке клика на Marker, добавленный на карту перед первичной загрузкой карты.
  • Исправлено отображение 3D-модели маркера геопозиции навигатора для всех типов маршрута, кроме пешеходного. Для пешеходного маршрута отображается обычная модель маркера геопозиции.
  • Обновлена конфигурация навигатора для улучшения работы при плохом сигнале GPS.
  • Исправлено отображение следующего манёвра для левостороннего движения при прохождении круговых перекрёстков в INavigationView.

🗺 Изменения в стилях карты

  • Добавлен слой для отображения динамических 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.
  • Определены операторы для Longitude и Latitude.
  • MapMarkerView и MapMarkerViewOverlay — SwiftUI-элементы для добавления пользовательских SwiftUI View в качестве маркеров на карту.
  • SpeedView — SwiftUI-элемент для отображения скорости в режиме навигации.
  • RouteMapObjectsProvider и NavigationManager.routeMapObjectsProvider — класс для получения объектов маршрута на карте.
  • RouteMapObject.roadEventObjects — дорожные события на карте для соответствующего маршрута.
  • MyLocationMapObjectSourceProvider и NavigationManager.myLocationMapObjectSourceProvider — класс для получения источника маркера геопозиции в навигаторе.

🛠 Исправления

  • Доработан механизм получения названия объекта маркера ItemMarkerInfo.title. Теперь учитывается, что маркер может быть без названия.
  • Исправлена потенциальная проблема при инициализации карты, когда стиль мог быть установлен раньше, чем завершался процесс инициализации.
  • Исправлено потенциальное зависание в MapObjectManager при частом добавлении и удалении объектов через метод MapObjectManager.removeAndAddObjects.
  • Добавлена дополнительная проверка на корректность обработки жеста наклона карты, чтобы это не приводило к падению приложения.
  • Исправлена ошибка, при которой приложение падало при логировании сетевых запросов.
  • Исправлена ошибка, при которой MapViewOverlay работал с прерыванием при взаимодействии с картой.
  • Исправлена работа SwiftUI-элементов для карты, которые пересоздавались при каждом обновлении интерфейса.
  • Исправлена ошибка, при которой для некоторых регионов не работало отображение дорожных событий на карте.
  • Исправлено отображение стрелок маршрута относительно иммерсивных дорог реальной ширины в режиме навигатора.
  • Исправлена потенциальная проблема, при которой не отображались баблы полосности на маршруте в режиме навигатора.

🗺 Изменения в стилях карты

  • Исправлены ошибки в стилях при отображении маркера геопозиции в режиме навигатора с иммерсивными дорогами реальной ширины.
  • Исправлены ошибки в стилях при отображении этажных планов зданий.

12.1.0 (2024-09-24)

🌟 Новые возможности

🛠 Исправления

  • DgisSource.createDgisSource теперь возвращает гибридный источник тайлов карты по умолчанию в полной (Full) версии SDK.
  • Различные улучшения работы иммерсивных дорог реальной ширины в режиме навигатора.

🗺 Изменения в стилях карты

  • Исправлены ошибки в стилях при отображении иммерсивных дорог реальной ширины.
  • Исправлено отображение тумана при различных углах наклона карты.

12.0.0 (2024-08-19)

Важно

Если вы обновляете сборку с мажорной версии 10.x, см. инструкцию по миграции.

🌟 Новые возможности

  • Иммерсивные дороги реальной ширины отображаются в режиме навигации, если:

    На текущий момент дороги реальной ширины доступны только в некоторых крупных городах России, ОАЭ и Саудовской Аравии.

  • Отображение тумана для отсечения отдалённых объектов карты при наклоне камеры.

  • BaseCamera.viewportRestriction — свойство для установки области видимости камеры.

  • MapOptions.graphicsPreset — свойство для установки графического режима через GraphicsPreset при инициализации карты.

  • Map.graphicsPreset — свойство для установки графического режима через GraphicsPreset для созданной карты.

  • Map.graphicsPresetHint — свойство для получения рекомендуемого режима графики для данного устройства.

  • Добавлена возможность наклона карты до 70 градусов, начиная с уровня масштабирования карты 18.

  • RasterUrlTemplate — возможность задания шаблона URL для запроса растровых тайлов. Может иметь два значения: DefaultRasterUrlTemplate для общего шаблона и WmsRasterUrlTemplate для растровых тайлов стандарта WMS.

  • MapLocationController.mapToNorthOrientation — свойство для включения принудительной ориентации карты на север.

  • RouteCamera.maxSpeedLimit — свойство для установки скорости в м/с, превышение которой фиксируется камерой.

  • NavigationFollowController.cameraBehaviour — режим слежения камеры за маркером геопозиции в навигаторе.

  • При отображении дорожных событий и данных о пробках на маршруте теперь учитывается высота рельефа.

  • Если текущая позиция на маршруте находится на расстоянии более 500 метров от следующего манёвра, произносится фраза «Двигайтесь прямо».

  • Добавлена поддержка звуковых инструкций для велосипедных и самокатных перекрёстков.

  • RouterType — возможность установки типа поисковика в AlternativeRoutesProviderSettings для поиска альтернативных маршрутов.

  • toRoutePoint в методе MillisecondsRouteAttribute.calculateDuration() — параметр для вычисления длительности движения по участку маршрута до конкретной точки.

  • TerritoryManager.findByPoint() и TerritoryManager.findByRect() — методы для фильтрации офлайн-регионов, доступных для скачивания, по GeoPoint и GeoRect.

❗ Изменения, влияющие на обратную совместимость

  • Удалён параметр Container.apiKeyOptions. Теперь вы можете передавать явно источник файл ключа с помощью KeySource, KeyFromAsset, KeyFromFile и KeyFromString.
  • Удалён параметр Container.vendorConfigFile. Теперь вы можете передавать явно источник файл конфигурационных настроек с помощью VendorConfig, VendorConfigFromAsset, VendorConfigFromFile и VendorConfigFromString.
  • Удалены методы Container.makeStyleFactory(), Container.makeSearchManagerFactory(), Container.makeSourceFactory(), Container.makeImageFactory() и Container.makeLocaleManager(). Вместо них используйте поля Container.styleFactory, Container.searchManagerFactory, Container.sourceFactory, Container.imageFactory и Container.localeManager.
  • Удалены IPositioningServicesFactory и параметр Container.positioningServices. Теперь при создании Container нужно передавать отдельно Container.locationProvider и Container.magneticHeadingProvider.
  • Удалён ILocationService. Вместо него используйте LocationService с аналогичным функционалом.
  • Удалены MyLocationController и MapLocationController.myLocationIndicatorController. Для настройки источника маркера геопозиции используйте MyLocationControllerSettings. В INavigationView теперь не происходит подмена источника геопозиции.
  • Структура HttpOptions изменена с сохранением функциональности.
  • В LogOptions переименованы поля: вместо osLogLevel и customLogLevel теперь systemLevel и customLevel.
  • В LogLevel переименованы значения: вместо disabled и fault теперь off и fatal.
  • Удалено значение CameraState.followPosition. Вместо него используйте значение Camera.behaviour.
  • Добавлены значения для SuggestedType, SuggestorType и ObjectType и теперь соответствуют результатам Places API.
  • Приведены к стандарту именования значения MyLocationMapObjectMarkerType.
  • Удалён метод createRasterTileDataSource(). Добавлен новый источник RasterTileSource с возможностью задания прозрачности растровых тайлов.
  • Удалён AudioVolume. Теперь вы можете задавать громкость инструкций от 0 до 100 через AudioSettings.volume.
  • Удалены AudioOptions и IAudioSettings. Используйте AudioSettings для настройки звука.
  • RouteMapObjectDisplayFlag.immersiveRouteParts — флаг для использования иммерсивной геометрии для отрезков маршрута.

🛠 Исправления

  • Оптимизировано кеширование дорожных событий при отображении на карте.
  • Исправлена ошибка, при которой варианты проезда не отображались, если среди маршрутов на общественном транспорте предлагался нерабочий вариант.
  • Исправлен учёт пройденного расстояния вдоль альтернативного маршрута.
  • Доработано отображение остановок на маршруте на общественном транспорте.
  • Доработано стирание маршрута при достижении финишной точки маршрута.
  • Исправлено отображение активного маршрута при плохом сигнале GPS.
  • Не озвучиваются голосовые инструкции во время навигации при плохом сигнале GPS.
  • Не озвучивается расстояние до следующей камеры, если оно меньше 150 метров.
  • Не озвучиваются голосовые инструкции при старте навигации.
  • Не озвучивается расстояние до камер контроля перекрёстка, полосы общественного транспорта и разметки.
  • Инструкция навигации «До конца маршрута осталось» не озвучивается, если впереди по маршруту есть другие инструкции.
  • Не озвучиваются пешеходные препятствия и подтипы дорог для непешеходных маршрутов.

🗺 Изменения в стилях карты

  • Добавлены слои с иммерсивными дорогами реальной ширины.
  • Доработаны различные слои, чтобы они корректно отображались при наличии иммерсивных дорог реальной ширины на карте.
  • Обновлены дизайны маркера геопозиции в обычном режиме и в режиме навигации. Также отображение маркера в дневной и ночной темах приведены к одному виду.
  • Добавлена поддержка новой ветки Московского метро МЦД-4А (литера А).
  • Исправлены стили веток Московского метро МЦД-3, МЦД-4, МЦД-4А и МЦД-5.
  • Добавлены подписи остановок на маршруте общественного транспорта.
  • Добавлены подписи остановок при просмотре полного маршрута выбранного общественного транспорта.