Spec-Zone.ru › Qt 5.15

Тип плагина QML

Тип Plugin описывает плагин сервисов местоположения. Подробнее...

Заявление об импорте: import QtLocation 5.15
С момента: QtLocation 5.5
  • Список всех членов, включая наследуемые

Свойства

  • allowExperimental : bool
  • availableServiceProviders : stringlist
  • isAttached : bool
  • locales : stringlist
  • имя : строка
  • параметры : список<PluginParameter>
  • предпочитаемые : stringlist
  • необходимые : перечисление

Методы

  • bool supportsGeocoding(GeocodingFeatures features)
  • bool supportsMapping(MappingFeatures features)
  • bool supportsNavigation(NavigationFeatures features)
  • bool supportsPlaces(PlacesFeatures features)
  • bool supportsRouting(RoutingFeatures features)

Подробное описание

Тип Plugin используется для декларативного указания того, какой доступный плагин GeoServices следует использовать для различных задач в API местоположения. Плагины используются типами Map, RouteModel и GeocodeModel, а также многими другими.

Плагины, распознанные системой, имеют свойство имя, простую строку, обычно указывающую имя сервиса, из которого плагин извлекает данные. Они также имеют различные функции, которые можно проверить с помощью методов supportsRouting(), supportsGeocoding(), supportsMapping(), supportsPlaces() и supportsNavigation().

Когда объект Plugin создается, он «откреплен» и не связан с каким-либо фактическим плагином сервиса. После получения информации путем установки свойств имя, предпочитаемые или необходимые, он выберет подходящий плагин сервиса для подключения. Объекты Plugin могут быть подключены только один раз; для использования нескольких плагинов создайте несколько объектов Plugin.

Пример использования

Следующий фрагмент кода демонстрирует создание объекта Plugin со свойствами необходимые и предпочитаемые установленных. Этот Plugin будет подключаться к первому найденному плагину, который поддерживает как отображение, так и геокодирование, и будет отдавать предпочтение плагинам с именем «here» или «osm» перед другими.

Plugin {
    id: plugin
    preferred: ["here", "osm"]
    required: Plugin.AnyMappingFeatures | Plugin.AnyGeocodingFeatures
}

Документация по свойствам

allowExperimental : bool

Это свойство указывает, можно ли использовать экспериментальные плагины.

availableServiceProviders : stringlist

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

isAttached : bool

Это свойство указывает, подключен ли элемент Plugin к плагину поставщика геосервисов.

locales : stringlist

Это свойство содержит упорядоченный список предпочитаемых языковых локалей плагина. Если первая локаль не может быть обработана, тогда бэкенд переходит ко второй и так далее. По умолчанию свойство locales содержит системную локаль.

Локали задаются как строки, имеющие формат «язык[_скрипт][_страна]» или «C», где:

  • язык — это двухбуквенный код языка в нижнем регистре по ISO 639,
  • скрипт — это четырёхбуквенный код скрипта в верхнем регистре по ISO 15924,
  • страна — это двух- или трёхбуквенный код страны в верхнем регистре по ISO 3166 (также «419» по определению Организации Объединённых Наций),
  • локаль «C» идентична по поведению английскому/американскому в соответствии с QLocale

Если первая указанная локаль не может быть обработана, Plugin переходит к следующей и так далее. Некоторые бэкэнды Plugin могут не поддерживать набор локалей, которые строго определены. Пример — некоторые Place во Франции могут иметь французские и английские локализации, в то время как в определённых районах Америки может быть доступна только английская локализация. В приведенном выше сценарии набор поддерживаемых локалей зависит от контекста местоположения поиска.

Если Plugin не может обработать ни одну из предпочитаемых локалей, менеджер переходит к поддержанному языку, специфичному для бэкэнда.

Для Plugin, которые не поддерживают локали, список локалей всегда пустой.

Следующий код демонстрирует, как установить одну и несколько локалей:

//single locale
Plugin {
    locales: "en_US"
}

//multiple locales
Plugin {
    locales: ["fr_FR","en_US"]
}

имя : строка

Это свойство содержит имя плагина. Установка этого свойства приведет к тому, что Plugin будет подключаться только к плагину с точно таким же именем. Значение необходимые будет игнорироваться.

[по умолчанию] параметры : список<PluginParameter>

Это свойство содержит список параметров плагина.

предпочитаемые : stringlist

Это свойство содержит упорядоченный список предпочитаемых имён плагинов, которые будут проверяться на наличие необходимых функций, заданных в необходимые, перед проверкой любых других доступных плагинов.

необходимые : перечисление

Это свойство содержит набор функций, которые будут необходимы объекту Plugin при выборе плагина сервиса для подключения. Если свойство имя установлено, это не влияет.

Могут быть установлены любые из следующих значений или их побитовое сочетание:

  • Plugin.NoFeatures
  • Plugin.GeocodingFeature
  • Plugin.ReverseGeocodingFeature
  • Plugin.RoutingFeature
  • Plugin.MappingFeature
  • Plugin.AnyPlacesFeature

Документация по методам

bool supportsGeocoding(GeocodingFeatures features)

Этот метод возвращает булево значение, указывающее, поддерживается ли заданный набор features плагином поставщика геосервисов. True возвращается, если все указанные features поддерживаются; в противном случае возвращается false.

Параметр features может быть любым сочетанием флагов:

Функция Описание
Plugin.NoGeocodingFeatures Не поддерживаются функции геокодирования.
Plugin.OnlineGeocodingFeature Поддерживается онлайн-геокодирование.
Plugin.OfflineGeocodingFeature Поддерживается офлайн-геокодирование.
Plugin.ReverseGeocodingFeature Поддерживается обратное геокодирование.
Plugin.LocalizedGeocodingFeature Поддерживается возвращение результатов геокодирования с локализованными адресами.
Plugin.AnyGeocodingFeatures Соответствует поставщику геосервиса, который предоставляет любые функции геокодирования.

bool supportsMapping(MappingFeatures features)

Этот метод возвращает булево значение, указывающее, поддерживается ли заданный набор features плагином поставщика геосервисов. Возвращается true, если все указанные features поддерживаются; в противном случае возвращается false.

Параметр features может быть любым сочетанием флагов:

Функция Описание
Plugin.NoMappingFeatures Не поддерживаются функции отображения.
Plugin.OnlineMappingFeature Поддерживается онлайн-отображение.
Plugin.OfflineMappingFeature Поддерживается офлайн-отображение.
Plugin.LocalizedMappingFeature Поддерживается возвращение локализованных данных карты.
Plugin.AnyMappingFeatures Соответствует поставщику геосервиса, который предоставляет любые функции отображения.

bool supportsNavigation(NavigationFeatures features)

Этот метод возвращает булево значение, указывающее, поддерживает ли плагин поставщика геосервисов указанный набор функций. Возвращается значение true, если все указанные функции поддерживаются; в противном случае возвращается false.

Параметр features может быть любой комбинацией флагов:

class="generic">
Функция Описание
Plugin.NoNavigationFeatures Не поддерживаются функции навигации.
Plugin.OnlineNavigationFeature Поддерживается онлайн-навигация.
Plugin.OfflineNavigationFeature Поддерживается офлайн-навигация.
Plugin.AnyNavigationFeatures Соответствует поставщику геосервисов, который предоставляет любые функции навигации.

bool supportsPlaces(PlacesFeatures features)

Этот метод возвращает булево значение, указывающее, поддерживает ли плагин поставщика геосервисов указанный набор функций. Возвращается значение true, если все указанные функции поддерживаются; в противном случае возвращается false.

Параметр features может быть любой комбинацией флагов:

class="generic">
Функция Описание
Plugin.NoPlacesFeatures Не поддерживаются функции мест.
Plugin.OnlinePlacesFeature Поддерживаются онлайн-места.
Plugin.OfflinePlacesFeature Поддерживаются офлайн-места.
Plugin.SavePlaceFeature Поддерживается сохранение категорий.
Plugin.RemovePlaceFeature Поддерживается удаление мест.
Plugin.PlaceRecommendationsFeature Поддерживается поиск рекомендуемых мест, похожих на другое место.
Plugin.SearchSuggestionsFeature Поддерживаются подсказки поиска.
Plugin.LocalizedPlacesFeature Поддерживается возврат локализованных данных о местах.
Plugin.NotificationsFeature Поддерживаются уведомления о изменениях мест и категорий.
Plugin.PlaceMatchingFeature Поддерживается сопоставление мест из двух разных поставщиков геосервисов.
Plugin.AnyPlacesFeatures Соответствует поставщику геосервисов, который предоставляет любые функции мест.

bool supportsRouting(RoutingFeatures features)

Этот метод возвращает булево значение, указывающее, поддерживает ли плагин поставщика геосервисов указанный набор функций. Возвращается значение true, если все указанные функции поддерживаются; в противном случае возвращается false.

Параметр features может быть любой комбинацией флагов:

class="generic">
Функция Описание
Plugin.NoRoutingFeatures Не поддерживаются функции маршрутизации.
Plugin.OnlineRoutingFeature Поддерживается онлайн-маршрутизация.
Plugin.OfflineRoutingFeature Поддерживается офлайн-маршрутизация.
Plugin.LocalizedRoutingFeature Поддерживается возврат маршрутов с локализованными адресами и инструкциями.
Plugin.RouteUpdatesFeature Поддерживается обновление существующего маршрута на основе текущего местоположения.
Plugin.AlternativeRoutesFeature Поддерживается возврат альтернативных маршрутов.
Plugin.ExcludeAreasRoutingFeature Поддерживается указание областей, через которые возвращаемый маршрут не должен проходить.
Plugin.AnyRoutingFeatures Соответствует поставщику геосервисов, который предоставляет любые функции маршрутизации.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qml-qtlocation-plugin.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API