Тип плагина QML
Тип плагина описывает плагин сервисов местоположения. Подробнее...
| Заявление об импорте: | import QtLocation 5.14 |
| С момента: | QtLocation 5.5 |
Свойства
- allowExperimental : bool
- availableServiceProviders : stringlist
- isAttached : bool
- locales : stringlist
- имя : string
- параметры : список<PluginParameter>
- предпочитаемые : stringlist
- необходимые : перечисление
Методы
- bool supportsGeocoding(features)
- bool supportsMapping(features)
- bool supportsNavigation(features)
- bool supportsPlaces(features)
- bool supportsRouting(features)
Подробное описание
Тип плагина используется для декларативного указания плагина GeoServices, который следует использовать для различных задач в API местоположения. Плагины используются типами Map, RouteModel и GeocodeModel, а также многими другими.
Плагины, распознанные системой, имеют свойство имя, представляющее собой строку, обычно обозначающую имя сервиса, из которого плагин извлекает данные. Они также обладают различными функциями, которые можно проверить с помощью методов supportsRouting(), supportsGeocoding(), supportsMapping(), supportsPlaces() и supportsNavigation().
При создании объекта плагина он «откреплён» и не связан с каким-либо плагином службы. После получения информации путём установки свойств имя, предпочитаемые или необходимые, он выберет соответствующий плагин службы для подключения. Объекты плагинов могут быть подключены только один раз; для использования нескольких плагинов создайте несколько объектов плагина.
Пример использования
Следующий фрагмент кода демонстрирует создание объекта плагина с установленными свойствами необходимые и предпочитаемые. Этот плагин подключится к первому найденному плагину, который поддерживает как отображение, так и геокодирование, и отдаст предпочтение плагинам с именами "here" или "osm" перед другими.
Plugin {
id: plugin
preferred: ["here", "osm"]
required: Plugin.AnyMappingFeatures | Plugin.AnyGeocodingFeatures
} Документация по свойствам
allowExperimental : bool
Это свойство указывает, можно ли использовать экспериментальные плагины.
availableServiceProviders : stringlist
Это свойство содержит список имен всех доступных плагинов службы. Это может использоваться для ручного перечисления доступных плагинов, если управления, предоставляемого свойствами имя и необходимые, недостаточно для ваших нужд.
isAttached : bool
Это свойство указывает, подключён ли элемент плагина к плагину поставщика геосервисов.
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"]
} name : string
Это свойство содержит имя плагина. Установка этого свойства заставит плагин подключаться только к плагину с точно таким же именем. Значение необходимые будет игнорироваться.
[default] parameters : list<PluginParameter>
Это свойство содержит список параметров плагина.
preferred : stringlist
Это свойство содержит упорядоченный список предпочитаемых имён плагинов, которые будут проверяться на наличие необходимых функций, установленных в необходимые, прежде чем будут проверяться другие доступные плагины.
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.14/qml-qtlocation-plugin.html