Тип плагина QML
Тип плагина описывает плагин сервисов местоположения. Подробнее...
| Заявление об импорте: | import QtLocation 5.13 |
| С момента: | QtLocation 5.5 |
Свойства
- allowExperimental : bool
- availableServiceProviders : stringlist
- isAttached : bool
- locales : stringlist
- имя : string
- параметры : list<PluginParameter>
- preferred : stringlist
- required : перечисление
Методы
- bool supportsGeocoding(features)
- bool supportsMapping(features)
- bool supportsNavigation(features)
- bool supportsPlaces(features)
- bool supportsRouting(features)
Подробное описание
Тип плагина используется для декларативного указания плагина GeoServices, который следует использовать для различных задач в API Location. Плагины используются типами Map, RouteModel и GeocodeModel, а также различными другими.
Плагины, распознанные системой, имеют свойство имя, простую строку, обычно обозначающую имя службы, из которой плагин получает данные. У них также есть различные функции, которые можно проверить, используя методы supportsRouting(), supportsGeocoding(), supportsMapping(), supportsPlaces() и supportsNavigation().
При создании объекта плагина он «отсоединяется» и не связан с каким-либо фактическим плагином службы. После получения информации путем установки свойств имя, preferred или required, он выберет подходящий плагин службы для подключения. Объекты плагинов могут быть подключены только один раз; для использования нескольких плагинов создайте несколько объектов плагина.
Пример использования
Следующий фрагмент кода демонстрирует создание объекта плагина с заданными свойствами required и preferred. Этот плагин подключится к первому найденному плагину, который поддерживает и отображение, и геокодирование, и отдаст предпочтение плагинам с именем «here» или «osm» перед другими.
Plugin {
id: plugin
preferred: ["here", "osm"]
required: Plugin.AnyMappingFeatures | Plugin.AnyGeocodingFeatures
} Документация по свойствам
allowExperimental : bool
Это свойство указывает, можно ли использовать экспериментальные плагины.
availableServiceProviders : stringlist
Это свойство содержит список имен всех доступных плагинов служб. Это можно использовать для ручного перечисления доступных плагинов, если управления, предоставляемого свойствами имя и required, недостаточно для ваших потребностей.
isAttached : bool
Это свойство указывает, подключен ли элемент плагина к плагину поставщика геосервисов.
locales : stringlist
Это свойство содержит упорядоченный список предпочтительных языковых локалей плагина. Если первая локаль не может быть обработана, то бэкенд использует вторую и так далее. По умолчанию свойство locales содержит системную локаль.
Локали задаются как строки в формате «язык[_скрипт][_страна]» или «C», где:
- язык — это двухбуквенный код языка в нижнем регистре, ISO 639,
- скрипт — это четырехбуквенный код скрипта в верхнем регистре, ISO 15924,
- страна — это двух- или трехбуквенный код страны в верхнем регистре, ISO 3166 (также «419», как определено Организацией Объединенных Наций),
- локаль «C» поведению идентична английской/американской, согласно QLocale
Если первая указанная локаль не может быть обработана, плагин Plugin переходит к следующей и так далее. Некоторые бэкэнды плагинов Plugin могут не поддерживать набор строго определенных локалей. Примером является то, что некоторые места во Франции могут иметь французскую и английскую локализацию, в то время как в некоторых районах Америки может быть только английская локаль. В приведенном выше сценарии набор поддерживаемых локалей зависит от контекста местоположения поиска.
Если плагин Plugin не может обработать ни одну из предпочтительных локалей, менеджер переходит к поддерживаемому языку, специфичному для бэкэнда.
Для плагинов Plugin, которые не поддерживают локали, список локалей всегда пуст.
Следующий код демонстрирует, как установить одну и несколько локалей:
//single locale
Plugin {
locales: "en_US"
}
//multiple locales
Plugin {
locales: ["fr_FR","en_US"]
} имя : string
Это свойство содержит имя плагина. Установка этого свойства приведет к тому, что плагин будет подключаться только к плагину с этим именем. Значение required будет проигнорировано.
[default] параметры : list<PluginParameter>
Это свойство содержит список параметров плагина.
preferred : stringlist
Это свойство содержит упорядоченный список предпочтительных имен плагинов, которые будут проверены на наличие требуемых функций, установленных в required, перед проверкой любых других доступных плагинов.
required : перечисление
Это свойство содержит набор функций, которые будут необходимы объекту плагина при выборе плагина службы для подключения. Если свойство имя установлено, это не оказывает влияния.
Могут быть установлены любые из следующих значений или битовое сочетание нескольких значений:
- Plugin.NoFeatures
- Plugin.GeocodingFeature
- Plugin.ReverseGeocodingFeature
- Plugin.RoutingFeature
- Plugin.MappingFeature
- Plugin.AnyPlacesFeature
Документация по методам
bool supportsGeocoding(features)
Этот метод возвращает булево значение, указывающее, поддерживает ли плагин поставщика геосервисов указанный набор features. True возвращается, если все указанные features поддерживаются; в противном случае возвращается false.
Параметр features может быть любым битовым сочетанием:
| Функция | Описание |
|---|---|
| Plugin.NoGeocodingFeatures | Функции геокодирования не поддерживаются. |
| Plugin.OnlineGeocodingFeature | Поддерживается онлайн-геокодирование. |
| Plugin.OfflineGeocodingFeature | Поддерживается офлайн-геокодирование. |
| Plugin.ReverseGeocodingFeature | Поддерживается обратное геокодирование. |
| Plugin.LocalizedGeocodingFeature | Поддерживает возвращение результатов геокодирования с локализованными адресами. |
| Plugin.AnyGeocodingFeatures | Соответствует поставщику геосервисов, который предоставляет любые функции геокодирования. |
bool supportsMapping(features)
Этот метод возвращает булево значение, указывающее, поддерживает ли плагин поставщика геосервисов указанный набор features. True возвращается, если все указанные features поддерживаются; в противном случае возвращается false.
Параметр features может быть любым битовым сочетанием:
| Функция | Описание |
|---|---|
| Plugin.NoMappingFeatures | Функции отображения не поддерживаются. |
| Plugin.OnlineMappingFeature | Поддерживается онлайн-отображение. |
| Plugin.OfflineMappingFeature | Поддерживается офлайн-отображение. |
| Plugin.LocalizedMappingFeature | Поддерживает возвращение локализованных данных карты. |
| Plugin.AnyMappingFeatures | Соответствует поставщику геосервисов, который предоставляет любые функции отображения. |
bool supportsNavigation(features)
Этот метод возвращает булево значение, указывающее, поддерживает ли плагин поставщика геосервисов указанный набор features. True возвращается, если все указанные features поддерживаются; в противном случае возвращается false.
Параметр features может быть любым битовым сочетанием:
| Функция | Описание |
|---|---|
| Plugin.NoNavigationFeatures | Функции навигации не поддерживаются. |
| Plugin.OnlineNavigationFeature | Поддерживается онлайн-навигация. |
| Plugin.OfflineNavigationFeature | Поддерживается офлайн-навигация. |
| Plugin.AnyNavigationFeatures | Соответствует поставщику геосервисов, предоставляющему любые функции навигации. |
bool supportsPlaces(features)
Этот метод возвращает логическое значение, указывающее, поддерживает ли плагин поставщика геосервисов указанный набор функций features. Возвращает true, если все указанные функции features поддерживаются; в противном случае возвращает false.
Параметр features может быть любой комбинацией флагов:
| Функция | Описание |
|---|---|
| Plugin.NoPlacesFeatures | Функции мест не поддерживаются. |
| Plugin.OnlinePlacesFeature | Поддерживается онлайн-доступ к местам. |
| Plugin.OfflinePlacesFeature | Поддерживаются офлайн-места. |
| Plugin.SavePlaceFeature | Поддерживается сохранение категорий. |
| Plugin.RemovePlaceFeature | Поддерживается удаление мест. |
| Plugin.PlaceRecommendationsFeature | Поддерживается поиск рекомендуемых мест, похожих на другое место. |
| Plugin.SearchSuggestionsFeature | Поддерживаются подсказки поиска. |
| Plugin.LocalizedPlacesFeature | Поддерживается возврат данных о местоположениях с учетом локализации. |
| Plugin.NotificationsFeature | Поддерживаются уведомления о изменениях места и категории. |
| Plugin.PlaceMatchingFeature | Поддерживается сопоставление мест из двух разных поставщиков геосервисов. |
| Plugin.AnyPlacesFeatures | Соответствует поставщику геосервисов, предоставляющему любые функции мест. |
bool supportsRouting(features)
Этот метод возвращает логическое значение, указывающее, поддерживает ли плагин поставщика геосервисов указанный набор функций features. Возвращает true, если все указанные функции features поддерживаются; в противном случае возвращает false.
Параметр features может быть любой комбинацией флагов:
| Функция | Описание |
|---|---|
| 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.13/qml-qtlocation-plugin.html