interface
CameraMoveController
Класс, позволяющий управлять положением камеры для нужд анимации
Класс должен быть потокобезопасным.
func animationTime() -> TimeInterval
CustomFollowController
Интерфейс, который можно реализовать на платформе для создания собственного контроллера слежения за параметрами Для добавления контроллера в камеру, нужно реализовать этот интерфейс и создать объект FollowController’а передав в качестве аргумента объект, реализующий данные интерфейс.
func availableValues() -> FollowValueOptionSet
func coordinates() -> GeoPoint?
func bearing() -> Bearing?
func tilt() -> Tilt?
func styleZoom() -> StyleZoom?
ICancellable
Жетон для отмены операции, при запуске которой он был получен.
func cancel()
IDirectoryObjectViewsFactory
func makeTitleView() -> AnyView
func makeSubtitleView() -> AnyView
func makeRatingView() -> AnyView
func makeDistanceView() -> AnyView
func makeShortAddressView() -> AnyView
func makeAlertView() -> AnyView
func makeFullAddressView(minimizeCard: @escaping MinimizeCardAction) -> AnyView
minimizeCard
func makeAdditionalInformationView() -> AnyView
func makeWorkingHoursView() -> AnyView
func makePorchesView() -> AnyView
func makeCloseButton(action: @escaping (() -> Void)) -> AnyView
func makeContactsView() -> AnyView
func makeSitesAndSocialNetworksView() -> AnyView
IDirectoryViewsFactory
Фабрика SwiftUI-элементов справочника.
func makeVoiceAssistantView(speechService: (any IVoiceAssistantService)?) -> VoiceAssistantView
SwiftUI-элемент для голосового ввода.
func makeSearchResultItemView(
object: DirectoryObject,
onTap: @escaping (DirectoryObject) -> Void,
lastLocation: GeoPoint?
) -> SearchResultItemView
SwiftUI-элемент карточки объекта в поисковой выдаче.
func makeDirectoryObjectView(
onDismiss: @escaping () -> Void,
onShowEntrances: (([EntranceInfo]) -> Void)?,
visibleAreaEdgeInsets: Binding<EdgeInsets>
) -> DirectoryObjectView
SwiftUI-элемент подробной информации об объекте справочника.
func makeDirectoryObjectView(
onDismiss: @escaping () -> Void,
onShowEntrances: (([EntranceInfo]) -> Void)?,
visibleAreaEdgeInsets: Binding<EdgeInsets>,
viewsFactory: IDirectoryObjectViewsFactory
) -> DirectoryObjectView
SwiftUI-элемент подробной информации об объекте справочника.
func makeDefaultDirectoryObjectViewsFactory(
edgeInsets: Binding<EdgeInsets>,
onDismiss: @escaping () -> Void,
onShowEntrances: (([EntranceInfo]) -> Void)?
) -> IDirectoryObjectViewsFactory
Фабрика SwiftUI-элемент для наполнения view с подробной информации об объекте.
IDoubleTapAndPanGestureRecognizer
var scaleDoublingTranslation
Число точек вертикального сдвига, приводящее к изменению масштаба в два раза.
Для обработчика жеста по умолчанию используется значение -100. Сдвиг вниз (увеличение y) увеличивает масштаб. Сдвиг вверх (уменьшение y) уменьшает масштаб. Для увеличения масштаба в 2 раза, при таком значении скорости масштабирования, нужно провести пальцем вниз на 100 pt.
IEnergyConsumption
Протокол для настройки энергосбережения устройства.
func setFpsCallback(_ fpsCallback: FpsCallback?)
Установить функцию обратного вызова на изменение fps.
fpsCallback
IHTTPClient
Интерфейс сетевого клиента для отправки HTTP-запросов.
func send(
request: URLRequest,
callback: @escaping RequestDataCompletionCallback
)
Функция для отправки запроса и получения результата выполнения через callback. Обработка результатов будет выполнена в callback.
request
HTTP-запрос.
callback
Функция обратного вызова при получении результата запроса.
IImageFactory
func make(pngData: Data, size: CGSize) -> Image
Создать изображение на основе PNG-данных.
func make(svgData: Data, size: CGSize) -> Image
Создать изображение на основе SVG-данных.
func make(lottieData: Data, size: CGSize) -> Image
Создать анимированное изображение на основе Lottie-данных.
func make(image: UIImage) -> Image
Создать изображение на основе объекта UIImage. При наличии готовых PNG-данных метод make(pngData:size:) работает эффективнее.
func make(imageFactory: @escaping () -> UIImage) -> Image
Создать изображение на основе отложенного объекта UIImage. Переданное замыкание вызывается отложенно в тот момент, когда нужны данные. При наличии готовых PNG-данных метод make(pngData:size:) работает эффективнее.
ILocationProvider
Интерфейс источника геопозиции, который реализуется на платформе.
func setCallbacks(
locationCallback: LocationCallback?,
availabilityCallback: AvailabilityCallback?
)
Устанавливает функции обратного вызова на обновление текущей гепозиции и изменение доступности источника геопозиции. Повторный вызов данного метода перезаписывает предыдущие заданные функции обратного вызова. Если оба параметра равны nil, то слежение за обновлением геопозиции нужно отключить.
locationCallback
Функция обратного вызова на обновление текущей гепозиции. Если провайдер доступен (вызов availabilityCallback со значением true), то данный источник всегда доставляет достоверную геопозицию. Достоверная геопозиция - это геопозиция, в которой все поля имеют актуальное значение на момент ее отправки в этот канал (т.е. если точность геопозиции >= половине длины экватора Земли, то геопозиция является достоверной для любых от указанных в ней корректных координат). Если значение точности <= 0, то позиция считается недостоверной даже если isAvailable == true. См. метод CLLocationManagerDelegate.locationManager(didUpdateLocations:).
availabilityCallback
Функция обратного вызова на изменение доступности источника геопозиции. Если вызвана эта функция со значением true, то все последующие вызовы locationCallback будут содержать достоверную (актуальную) геопозицию. Даже если слежение за изменением геопозиции недоступно, реализация ILocationProvider может присылать новую геопозицию, но она будет считаться недостоверной. См. метод CLLocationManagerDelegate.locationManager(didFailWithError:).
func setDesiredAccuracy(_ accuracy: DesiredAccuracy)
Задает желаемую точность определения местоположения. Если устройство не может вернуть местоположение с желаемой точностью, то оно может вернуть местоположение с меньшей точностью. Если платфора не предоставляет аналогичный по функциональности метод, то данный метод должен иметь пустую реализацию.
См. метод CLLocationManager.desiredAccuracy и \ .
accuracy
IMagneticHeadingProvider
Протокол, предоставляющий направление устройства относительно направления на магнитный север. Все методы данного интерфейса должны вызываться из очереди IPositioningServicesFactory.positiningQueue.
func setCallbacks(
headingCallback: HeadingCallback?,
availabilityCallback: AvailabilityCallback?
)
Устанавливает функции обратного вызова на обновление текущего направления и изменения доступности источника направления. Повторный вызов данного метода перезаписывает предыдущие функции обратного вызова. Если оба параметра равны nil, то слежение за обновлением направления нужно отключить.
headingCallback
Функция обратного вызова на обновление текущего направления. См. метод CLLocationManagerDelegate.locationManager(didUpdateHeading:).
availabilityCallback
Функция обратного вызова на изменение доступности источника направления. Даже если слежение за изменением направления недоступно, реализация может присылать новое направление, но оно будет считаться недостоверным. См. метод CLLocationManagerDelegate.locationManager(didFailWithError).
IMapCoordinateSpace
Координатное пространство карты. Если карта не существует, то преобразования координат возвращают их без изменений, а bounds равно .zero. К методам и свойствам можно обращаться только из главной очереди.
IMapEventProcessor
Обработчик жестов карты. Все координаты принимаются в физических точках (пикселах).
func process(event: Event)
Обработка события управления картой.
event
Событие управления картой.
IMapFactory
Фабрика согласованых объектов карты.
var initialMapOptions
Начальные настройки карты. Не изменяются после создания карты. Можно читать из любой очереди.
var map
Контроллер карты и камеры. Можно обращаться из любой очереди, но необходима синхронизация в случае одновременного доступа.
var mapUIView
Слой карты. Можно читать только из главной очереди.
var mapView
Слой карты для SwiftUI. Можно читать только из главной очереди.
var gestureUIView
Слой обработки жестов. За создание слоя отвечает свойство initialMapOptions.gestureViewFactory. Можно читать только из главной очереди.
var mapEventProcessor
Обработчик жестов карты.
Используется gestureView для управления событиями карты. Использование совместно с gestureView может нарушать транзакционность жестов и приводить к неопределенному поведению.
var mapCoordinateSpace
Координатное пространство карты.
var mapUIControlsFactory
Фабрика стандартных элементов управления картой, использующих встроенный стиль.
var mapViewsFactory
Фабрика стандартных SwiftUI элементов управления картой, использующих встроенный стиль.
var snapshotter
Инструмент для захвата изображения карты. Изображения делаются на основе текущего состояния. Можно читать из любой очереди.
var energyConsumption
Объект для настройки энергосбережения устройства.
var markerOverlayUIView
Объект для работы с UIView маркерами на карте.
var markerOverlayView
Объект для работы со SwiftUI View маркерами на карте.
IMapGestureUIView
Распознаватели жестов на карте по умолчанию.
var doubleTapGestureRecognizer
Распознаватель двойного прикосновения. Используется для приближения карты (уменьшения масштаба) с фиксированным коэффициентом.
var panGestureRecognizer
Распознаватель таскания. Используется для перемещения карты в плоскости. По умолчанию распознаётся таскание ровно одной точкой нажатия.
var twoFingerPanGestureRecognizer
Таскание двумя пальцами. Используется для трёхмерного наклона карты относительно горизонта.
var rotationGestureRecognizer
Жест вращения карты в плоскости.
var pinchGestureRecognizer
Изменение масштаба щипанием.
var twoFingerTapGestureRecognizer
Кратковременное прикосновение двумя пальцами. Используется для отдаления карты (увеличения масштаба) с фиксированным коэффициентом.
var doubleTapAndPanGestureRecognizer
Двойное прикосновение с последующим сдвигом. Используется для управления масштабом карты.
IMapGestureUIViewFactory
Фабрика слоя обработки жестов. Все методы вызываются только на главной очереди.
@available(*, deprecated, message: "Please use makeGestureView(map:eventProcessor:coordinateSpace:)")
func makeGestureUIView(
map: Map,
coordinateSpace: IMapCoordinateSpace
) -> UIView & IMapGestureUIView
Создать слой обработки жестов.
Устаревший метод. Необходимо использовать makeGestureUIView(map:eventProcessor:coordinateSpace:).
func makeGestureUIView(
map: Map,
eventProcessor: IMapEventProcessor,
coordinateSpace: IMapCoordinateSpace
) -> UIView & IMapGestureUIView
Создать слой обработки жестов.
@available(*, deprecated, message: "Please use makeGestureView(map:eventProcessor:coordinateSpace:)")
func makeGestureUIView(
map: Map,
coordinateSpace: IMapCoordinateSpace
) -> UIView & IMapGestureUIView
Создать слой обработки жестов.
func makeGestureUIView(
map: Map,
eventProcessor: IMapEventProcessor,
coordinateSpace: IMapCoordinateSpace
) -> UIView & IMapGestureUIView
Создать слой обработки жестов.
This documentation comment was inherited from .
IMapSnapshotter
Инструмент по захвату изображения карты.
func makeImage(
scale: CGFloat,
orientation: UIImage.Orientation
) -> Future<UIImage>
Получить изображение карты на основе её текущего состояния. Можно вызывать из любой очереди. Значение возвращается во Future на неопределённой очереди.
Перед вызовом метода необходимо убедиться, что сцена, отображающая карту, находится в состоянии UIScene.ActivationState.foregroundActive. Под iOS 12 приложение должно находиться в состоянии UIApplication.State.active.
func makeImage(
scale: CGFloat = 1,
orientation: UIImage.Orientation = .up
) -> Future<UIImage>
Получить изображение карты на основе её текущего состояния. Можно вызывать из любой очереди. Значение возвращается во Future на неопределённой очереди.
Перед вызовом метода необходимо убедиться, что сцена, отображающая карту, находится в состоянии UIScene.ActivationState.foregroundActive. Под iOS 12 приложение должно находиться в состоянии UIApplication.State.active.
IMapUIControlsFactory
Фабрика кнопок для добавления на карту.
func makeZoomUIControl() -> ZoomUIControl
func makeCurrentLocationUIControl() -> CurrentLocationUIControl
func makeCompassUIControl() -> CompassUIControl
func makeTrafficUIControl() -> TrafficUIControl
func makeRoadEventCreatorButtonUIControl() -> RoadEventCreatorButtonUIControl
func makeIndoorUIControl(_ options: IndoorUIControlOptions) -> IndoorUIControl
func makeIndoorUIControl(_ options: IndoorUIControlOptions = .default) -> IndoorUIControl
IMapUIView
Протокол слоя карты.
func addObjectTappedCallback(callback: MapObjectTappedCallback)
Добавить функцию обратного вызова, которая будет вызываться при клике или при долгом клике на карту.
callback
func addObjectLongPressCallback(callback: MapObjectTappedCallback)
callback
func removeObjectTappedCallback(callback: MapObjectTappedCallback)
Удалить функцию обратного вызова, которая вызывалась при клике или при долгом клике на карту.
callback
func removeLongPressCallback(callback: MapObjectTappedCallback)
callback
var gestureUIView
Дополнительный слой, располагающийся над всей поверхностью карты. Используется для перехвата жестов. Если заменить этот слой на иной, нужно также реализовать отправку событий карты через IMapEventProcessor. В случае установки nil встроенная обработка жестов прекратится.
var appearance
Задать активный набор тем текущего стиля и возможность автоматического переключения тем в зависимости от окружения. Если выбран .automatic, карта переключится на выбранную пару тем с учётом текущего отображения (светлого или тёмного). Эта возможность доступна начиная с iOS 13. Если же выбран .universal, используется только одна активная тема в любом окружении. Эта возможность доступна ранее iOS 13.
var showsAPIVersion
Показывать ли версию API в копирайте. По умолчанию false.
var copyrightAlignment
По умолчанию bottomRight.
var copyrightInsets
Отступы копирайта от границ карты. По умолчанию .zero. При позиционировании учитываются safeAreaInsets представления карты. Значения отступов не должны быть отрицательными.
var urlOpener
Пользовательский обработчик открытия URL при тапе в копирайт.
Позволяет переопределить поведение по умолчанию, при котором переход по ссылке будет осуществлен без подтверждения со стороны пользователя.
IMapViewsFactory
Фабрика SwiftUI кнопок для добавления на карту.
func makeCurrentLocationView() -> AnyView
func makeZoomView() -> AnyView
func makeTrafficView(colors: TrafficViewColors) -> AnyView
func makeIndoorView() -> AnyView
func makeCompassView(icon: UIImage?, highlightedIcon: UIImage?) -> AnyView
func makeMiniMapView(mapFactory: IMapFactory) throws -> AnyView
func makeRoadEventCreatorButtonView(callback: (() -> Void)?) -> AnyView
func makeCompassView() -> AnyView
IMarkerOverlayUIView
Протокол для работы с UIView маркерами на карте.
func removeAll()
Удалить все маркеры.
IMarkerUIView
Протокол UIView маркера.
IMarkerUIViewFactory
Фабрика для создания UIView маркеров.
func make(
/// Отображение маркера.
view: UIView,
/// Точка на карте, к которой осуществляется привязка.
position: GeoPointWithElevation,
/// Относительная точка на View, к которой осуществяется привязка.
anchor: Anchor,
/// Дополнительное смещение в пикселях по оси X.
offsetX: CGFloat,
/// Дополнительное смещение в пикселях по оси Y.
offsetY: CGFloat
) -> IMarkerUIView
Создать маркер.
IModelFactory
func make(modelData: Data) -> ModelData
Создать модель на основе бинарных данных.
INativeScaleProvider
Протокол, описывающие преобразование точек в пикселы.
INavigationMapUIControlsFactory
Фабрика UI-элементов карты в навигаторе.
var followManager
Текущий объект для переключения режимов слежения в навигаторе.
INavigationMapViewsFactory
Фабрика SwiftUI Map элементов для добавления в навигатор.
INavigationUIControl
UI-элемент навигатора.
INavigationUIControlsFactory
Фабрика UI-элементов навигатора.
INavigationUIView
var visibleAreaEdgeInsets
Видимая область карты с учетом интерфейса навигатора.
var visibleAreaEdgeInsetsChangedCallback
Замыкание обратного вызова при изменении видимой области карты.
var finishButtonCallback
Замыкание обратного вызова при нажатии кнопки завершения маршрута.
INavigationUIViewFactory
Фабрика UI-элементов навигатора.
INavigationViewFactory
Фабрика SwiftUI элементов навигатора.
INavigationViewsFactory
Фабрика SwiftUI-элементов для добавления в навигатор.
INavigatorFollowManager
Обертка для переключения режимов слежения в навигаторе.
INavigatorFollowManagerObservation
INextManeuverUIControl
UI-элемент с информацией о следующем манёвре и дополнительном манёвре.
var onDidRequestLayout
Сигнал о необходимости обновления макета.
InstallFallback
Поведение при ошибке установки или обновления пакета.
IRoadEventCreatorUIView
Протокол интерфейса создания дорожного события.
var visibleAreaEdgeInsets
Видимая область с учетом размера карточки создания дорожного события.
var visibleAreaEdgeInsetsChangedCallback
Замыкание обратного вызова при изменении видимой области.
var cancelButtonCallback
Замыкание обратного вызова при нажатии кнопки отмены.
var createRoadEventRequestCallback
Замыкание обратного вызова с результатом создания дорожного события.
IRoadEventInfoUIView
Протокол карточки дорожного события.
func setRoadEvent(_ roadEvent: RoadEvent)
Обновить контент карточки данными нового дорожного события.
roadEvent
Дорожное событие.
var closeButtonCallback
Замыкание обратного вызова при нажатии кнопки закрытия.
var roadEventActionResultCallback
Замыкание обратного вызова при завершении обработки действия дорожного события.
var removeRoadEventActionResultCallback
Замыкание обратного вызова при завершении обработки действия дорожного события.
IRoadEventUIViewFactory
UIKit фабрика карточки дорожного события.
func makeRoadEventInfoUIView(_ roadEvent: RoadEvent) -> IRoadEventInfoUIView
Карточка дорожного события.
func makeRoadEventCreatorUIView(map: Map) -> IRoadEventCreatorUIView
Интерфейс создания дорожного события.
IRoadEventViewFactory
SwiftUI фабрика карточки дорожного события.
func makeRoadEventInfoView(_ roadEvent: RoadEvent) -> RoadEventInfoView
Карточка дорожного события.
func makeRoadEventCreatorView(
map: Map,
visibleAreaEdgeInsets: Binding<EdgeInsets>?
) -> RoadEventCreatorView
SwiftUI элемент для создания дорожного события.
IRouteDetailsUIView
Протокол карточки деталей маршрута.
IRouteEditorFactory
Конструктор источников данных карты.
IRouteListUIView
Протокол списка превью маршрутов.
IRouteUIView
Протокол превью карточки маршрута.
var route
Маршрут.
ISDKError
Протокол для всех исключений MobileSDK.
ISearchManagerFactory
Фабрика поисковиков с разными источниками данных.
func makeOnlineManager() throws -> SearchManager?
Создать поисковик, работающий онлайн.
func makeOfflineManager() throws -> SearchManager?
Создать поисковик, работающий с предзагруженными данными.
func makeSmartManager() throws -> SearchManager?
Создать поисковик, работающий онлайн или с предзагруженными данными в зависимости от наличия подключения к интернету.
ISearchResultItemViewFactory
func makeTitleView() -> AnyView
func makeSubtitleView() -> AnyView
func makeRatingView() -> AnyView
func makeDistanceView() -> AnyView
func makeAddressView() -> AnyView
func makeAttributesView() -> AnyView
func makeChargingStationView() -> AnyView
func makeAlertView() -> AnyView
ISourceFactory
Конструктор источников данных карты.
func createOnlineDGISSource() -> Source
Создание источника, получающего данные с серверов 2ГИС.
func createGeometryMapObjectSourceBuilder() -> GeometryMapObjectSourceBuilder
Создание источника данных с наложенными объектами (например, маркерами).
func createImmersiveDgisSource() -> Source
Создание источника данных с иммерсивными данными.
func createOfflineDGISSource() -> Source
Создание источника, использующего в работе предварительно загруженные данные 2ГИС.
func createHybridDGISSource() -> Source
Создание источника, использующего в работе данные с серверов 2ГИС и предварительно загруженные данные 2ГИС.
func createRouteEditorSource(routeEditor: RouteEditor) -> RouteEditorSource
Создать источник данных для редактирования маршрута.
IStyleFactory
Интерфейс инструмента загрузки стилей.
func setAttribute(name: String, value: AttributeValue) -> Self
func loadDefault() -> Future<Style>
Получение предустановленного стиля.
func loadFile(path: String) -> Future<Style>
Загрузка пользовательского стиля из указанного файла по абсолютному пути.
path
func loadFile(url: URL) -> Future<Style>
Загрузка пользовательского стиля из указанного файла по URL. URL должен быть по схеме “file:”, иначе будет возвращена ошибка.
url
func loadResource(name: String, bundle: Bundle) -> Future<Style>
Загрузка пользовательского стиля по имени из указанного пакета.
IThermometerUIControl
var eventsPosition
IVoiceAssistantService
func requestPermission(completion: @escaping ((VoicePermissionState) -> Void))
func startRecognition(
progress: @escaping ((VoiceRecognitionState) -> Void),
completion: @escaping ((VoiceRecognitionResult) -> Void)
)
func abortRecognition()
LogSink
Приемник логирования.
SearchHistoryKeyStrategy
Интерфейс, предоставляющий реализовать стратегию создания ключа для элемента истории поиска. Ключ используется для определения уникальности элемента истории поиска.
SimpleClusterRenderer
Класс для кастомизации внешнего вида кластера в IMapObjectManager.
func renderCluster(
cluster: SimpleClusterObject
) -> SimpleClusterOptions