Auf dieser Seite

QGeoServiceProvider Class

Die Klasse „QGeoServiceProvider“ bündelt den Zugriff auf Dienste, die geografische Informationen bereitstellen. Mehr...

Header: #include <QGeoServiceProvider>
qmake: QT += location
Inherits: QObject

Öffentliche Typen

enum Error { NoError, NotSupportedError, UnknownParameterError, MissingRequiredParameterError, ConnectionError, LoaderError }
enum GeocodingFeature { NoGeocodingFeatures, OnlineGeocodingFeature, OfflineGeocodingFeature, ReverseGeocodingFeature, LocalizedGeocodingFeature, AnyGeocodingFeatures }
flags GeocodingFeatures
enum MappingFeature { NoMappingFeatures, OnlineMappingFeature, OfflineMappingFeature, LocalizedMappingFeature, AnyMappingFeatures }
flags MappingFeatures
enum NavigationFeature { NoNavigationFeatures, OnlineNavigationFeature, OfflineNavigationFeature, AnyNavigationFeatures }
flags NavigationFeatures
enum PlacesFeature { NoPlacesFeatures, OnlinePlacesFeature, OfflinePlacesFeature, SavePlaceFeature, RemovePlaceFeature, …, AnyPlacesFeatures }
flags PlacesFeatures
enum RoutingFeature { NoRoutingFeatures, OnlineRoutingFeature, OfflineRoutingFeature, LocalizedRoutingFeature, RouteUpdatesFeature, …, AnyRoutingFeatures }
flags RoutingFeatures

Öffentliche Funktionen

QGeoServiceProvider(const QString &providerName, const QVariantMap &parameters = QVariantMap(), bool allowExperimental = false)
virtual ~QGeoServiceProvider()
QGeoServiceProvider::Error error() const
QString errorString() const
QGeoServiceProvider::Error geocodingError() const
QString geocodingErrorString() const
QGeoServiceProvider::GeocodingFeatures geocodingFeatures() const
QGeoCodingManager *geocodingManager() const
QGeoServiceProvider::Error mappingError() const
QString mappingErrorString() const
QGeoServiceProvider::MappingFeatures mappingFeatures() const
QGeoServiceProvider::Error navigationError() const
QString navigationErrorString() const
(since QtLocation 5.11) QGeoServiceProvider::NavigationFeatures navigationFeatures() const
QPlaceManager *placeManager() const
QGeoServiceProvider::Error placesError() const
QString placesErrorString() const
QGeoServiceProvider::PlacesFeatures placesFeatures() const
QGeoServiceProvider::Error routingError() const
QString routingErrorString() const
QGeoServiceProvider::RoutingFeatures routingFeatures() const
QGeoRoutingManager *routingManager() const
void setAllowExperimental(bool allow)
void setLocale(const QLocale &locale)
void setParameters(const QVariantMap &parameters)

Statische öffentliche Mitglieder

Ausführliche Beschreibung

Die Maps- und Navigation-API ermöglicht den Zugriff auf verschiedene Arten von geografischen Informationen, einschließlich Funktionen zur Geokodierung, Routenplanung und Kartenanzeige. Der QGeoServiceProvider bündelt den Zugriff auf eine Reihe dieser Dienste, die von einem einzigen Anbieter bereitgestellt werden.

Es ist möglich, Dienstanbieter für die verschiedenen Bereiche zu kombinieren, sodass beispielsweise ein Geokodierungsmanager eines Dienstanbieters mit einem Routing-Manager eines anderen Dienstanbieters verwendet werden kann.

Dies wird jedoch nicht empfohlen, es sei denn, der Client kann sicherstellen, dass die von den verschiedenen Diensten bereitgestellten Daten kompatibel sind, da Unterschiede in den zugrunde liegenden Datensätzen zu schwerwiegenden Inkonsistenzen zwischen den Diensten führen könnten.

Unterklassen von QGeoServiceProvider gewährleisten, dass die von ihnen bereitgestellten Dienste miteinander kompatibel sind.

Jeder Dienstanbieter muss bei seinen dienstspezifischen Parameternamen/-schlüsseln eine Namenskonvention einhalten. Als Präfix für alle Parameternamen wird der Name des Anbieters verwendet. Beim Laden eines Anbieters werden nur jene Parameter weitergegeben, deren Namen mit dem Namen des Anbieters beginnen. Dadurch wird vermieden, dass sensible Parameter wie „confidential token “ oder „ app_id “ an andere Plugins weitergegeben werden.

Bitte lesen Sie die spezifische Dokumentation zum GeoServices-Plugin, um eine vollständige Liste der verfügbaren Parameternamen/-schlüssel und Werte zu erhalten.

Dokumentation zu Mitgliedstypen

enum QGeoServiceProvider::Error

Beschreibt einen Fehler im Zusammenhang mit dem Laden und der Einrichtung eines Dienstanbieter-Plugins.

KonstanteWertBeschreibung
QGeoServiceProvider::NoError0Es ist kein Fehler aufgetreten.
QGeoServiceProvider::NotSupportedError1Das Plugin unterstützt diese Funktionalität nicht.
QGeoServiceProvider::UnknownParameterError2Das Plugin hat einen der übergebenen Parameter nicht erkannt.
QGeoServiceProvider::MissingRequiredParameterError3Das Plugin hat einen der erwarteten Parameter nicht gefunden.
QGeoServiceProvider::ConnectionError4Das Plugin konnte keine Verbindung zu seinem Backend-Dienst oder seiner Datenbank herstellen.
QGeoServiceProvider::LoaderError5Das Plugin konnte nicht geladen werden.

enum QGeoServiceProvider::GeocodingFeature
flags QGeoServiceProvider::GeocodingFeatures

Beschreibt die vom Geodienstanbieter unterstützten Geokodierungsfunktionen.

KonstanteWertBeschreibung
QGeoServiceProvider::NoGeocodingFeatures0Es werden keine Geokodierungsfunktionen unterstützt.
QGeoServiceProvider::OnlineGeocodingFeature(1<<0)Online-Geokodierung wird unterstützt.
QGeoServiceProvider::OfflineGeocodingFeature(1<<1)Offline-Geokodierung wird unterstützt.
QGeoServiceProvider::ReverseGeocodingFeature(1<<2)Reverse-Geokodierung wird unterstützt.
QGeoServiceProvider::LocalizedGeocodingFeature(1<<3)Unterstützt die Rückgabe von Geokodierungsergebnissen mit lokalisierten Adressen.
QGeoServiceProvider::AnyGeocodingFeatures~(0)Entspricht einem Geodienstanbieter, der beliebige Geokodierungsfunktionen bereitstellt.

Der Typ „GeocodingFeatures“ ist ein typedef für „QFlags<GeocodingFeature>“. Er speichert eine ODER-Kombination von „GeocodingFeature“-Werten.

enum QGeoServiceProvider::MappingFeature
flags QGeoServiceProvider::MappingFeatures

Beschreibt die vom Geodienstanbieter unterstützten Kartierungsfunktionen.

KonstanteWertBeschreibung
QGeoServiceProvider::NoMappingFeatures0Es werden keine Kartierungsfunktionen unterstützt.
QGeoServiceProvider::OnlineMappingFeature(1<<0)Online-Kartierung wird unterstützt.
QGeoServiceProvider::OfflineMappingFeature(1<<1)Offline-Karten werden unterstützt.
QGeoServiceProvider::LocalizedMappingFeature(1<<2)Unterstützt die Rückgabe lokalisierter Kartendaten.
QGeoServiceProvider::AnyMappingFeatures~(0)Entspricht einem Geodienstanbieter, der beliebige Kartierungsfunktionen bereitstellt.

Der Typ „MappingFeatures“ ist ein typedef für „QFlags<MappingFeature>“. Er speichert eine OR-Kombination von „MappingFeature“-Werten.

Beschreibt die vom Geodienstanbieter unterstützten Navigationsfunktionen.

KonstanteWertBeschreibung
QGeoServiceProvider::NoNavigationFeatures0Es werden keine Navigationsfunktionen unterstützt.
QGeoServiceProvider::OnlineNavigationFeature(1<<0)Online-Navigation wird unterstützt.
QGeoServiceProvider::OfflineNavigationFeature(1<<1)Offline-Navigation wird unterstützt.
QGeoServiceProvider::AnyNavigationFeatures~(0)Entspricht einem Geodienstanbieter, der beliebige Navigationsfunktionen bereitstellt.

Der Typ „NavigationFeatures“ ist eine Typdefinition für „QFlags<NavigationFeature>“. Er speichert eine ODER-Kombination von „NavigationFeature“-Werten.

enum QGeoServiceProvider::PlacesFeature
flags QGeoServiceProvider::PlacesFeatures

Beschreibt die vom Geodienstanbieter unterstützten Ortsmerkmale.

KonstanteWertBeschreibung
QGeoServiceProvider::NoPlacesFeatures0Es werden keine Ortsmerkmale unterstützt.
QGeoServiceProvider::OnlinePlacesFeature(1<<0)Online-Orte werden unterstützt.
QGeoServiceProvider::OfflinePlacesFeature(1<<1)Offline-Orte werden unterstützt.
QGeoServiceProvider::SavePlaceFeature(1<<2)Das Speichern von Orten wird unterstützt.
QGeoServiceProvider::RemovePlaceFeature(1<<3)Das Entfernen oder Löschen von Orten wird unterstützt.
QGeoServiceProvider::SaveCategoryFeature(1<<4)Das Speichern von Kategorien wird unterstützt.
QGeoServiceProvider::RemoveCategoryFeature(1<<5)Das Entfernen oder Löschen von Kategorien wird unterstützt.
QGeoServiceProvider::PlaceRecommendationsFeature(1<<6)Die Suche nach empfohlenen Orten, die einem anderen Ort ähnlich sind, wird unterstützt.
QGeoServiceProvider::SearchSuggestionsFeature(1<<7)Suchvorschläge werden unterstützt.
QGeoServiceProvider::LocalizedPlacesFeature(1<<8)Die Rückgabe lokalisierter Ortsdaten wird unterstützt.
QGeoServiceProvider::NotificationsFeature(1<<9)Benachrichtigungen über Änderungen an Orten und Kategorien werden unterstützt.
QGeoServiceProvider::PlaceMatchingFeature(1<<10)Es wird die Zuordnung von Orten aus zwei verschiedenen Geodienstanbietern unterstützt.
QGeoServiceProvider::AnyPlacesFeatures~(0)Stimmt mit einem Geodienstanbieter überein, der beliebige Ortsmerkmale bereitstellt.

Der Typ „PlacesFeatures“ ist ein `typedef` für ` QFlags<PlacesFeature>`. Er speichert eine ODER-Kombination von `PlacesFeature`-Werten.

enum QGeoServiceProvider::RoutingFeature
flags QGeoServiceProvider::RoutingFeatures

Beschreibt die vom Geodienstanbieter unterstützten Routing-Funktionen.

KonstanteWertBeschreibung
QGeoServiceProvider::NoRoutingFeatures0Es werden keine Routing-Funktionen unterstützt.
QGeoServiceProvider::OnlineRoutingFeature(1<<0)Online-Routing wird unterstützt.
QGeoServiceProvider::OfflineRoutingFeature(1<<1)Offline-Routing wird unterstützt.
QGeoServiceProvider::LocalizedRoutingFeature(1<<2)Die Ausgabe von Routen mit lokalisierten Adressen und Anweisungen wird unterstützt.
QGeoServiceProvider::RouteUpdatesFeature(1<<3)Die Aktualisierung einer bestehenden Route basierend auf der aktuellen Position wird unterstützt.
QGeoServiceProvider::AlternativeRoutesFeature(1<<4)Die Ausgabe alternativer Routen wird unterstützt.
QGeoServiceProvider::ExcludeAreasRoutingFeature(1<<5)Es wird die Angabe von Gebieten unterstützt, die die zurückgegebene Route nicht durchqueren darf.
QGeoServiceProvider::AnyRoutingFeatures~(0)Entspricht einem Geodienstanbieter, der beliebige Routing-Funktionen bereitstellt.

Der Typ „RoutingFeatures“ ist ein typedef für QFlags<RoutingFeature>. Er speichert eine ODER-Kombination von RoutingFeature-Werten.

Dokumentation der Mitgliedsfunktionen

QGeoServiceProvider::QGeoServiceProvider(const QString &providerName, const QVariantMap &parameters = QVariantMap(), bool allowExperimental = false)

Erstellt einen QGeoServiceProvider, dessen Backend den Namen „ providerName “ trägt, unter Verwendung des angegebenen „ parameters “.

Wenn mehrere Plugins denselben ` providerName` haben, wird das Plugin mit der höchsten gemeldeten `providerVersion()` verwendet.

Ist ` allowExperimental ` auf `true` gesetzt, können als experimentell gekennzeichnete Plugins verwendet werden. Standardmäßig werden experimentelle Plugins nicht berücksichtigt.

Wenn kein Plugin geladen werden konnte, das dem Wert von ` providerName ` entspricht, liefern die Methoden ` error()` und ` errorString()` Details darüber, warum dies der Fall ist.

Hinweis: Bevor die Liste der „ parameters “ an das zu ladende Provider-Plugin übergeben wird, wird die Liste gefiltert, um zu vermeiden, dass pluginspezifische Parameter mit nicht zugehörigen Provider-Plugins geteilt werden. Pluginspezifische Parameterschlüssel müssen mit dem Namen des Providers vorangestellt werden (z. B. here.app_id).

[virtual noexcept] QGeoServiceProvider::~QGeoServiceProvider()

Löscht das Dienstanbieter-Objekt.

[static] QStringList QGeoServiceProvider::availableServiceProviders()

Gibt eine Liste mit den Namen der verfügbaren Dienstanbieter zurück, die mit den Konstruktoren von „ QGeoServiceProvider “ verwendet werden können.

QGeoServiceProvider::Error QGeoServiceProvider::error() const

Gibt einen Fehlercode zurück, der den Fehler beschreibt, der bei der letzten von dieser Klasse durchgeführten Operation aufgetreten ist.

QString QGeoServiceProvider::errorString() const

Gibt eine Zeichenkette zurück, die den Fehler beschreibt, der bei der letzten von dieser Klasse ausgeführten Operation aufgetreten ist.

QGeoServiceProvider::Error QGeoServiceProvider::geocodingError() const

Gibt einen Fehlercode zurück, der den Fehler beschreibt, der beim letzten Versuch, einen Geokodierungsmanager zu erstellen, aufgetreten ist.

QString QGeoServiceProvider::geocodingErrorString() const

Gibt eine Zeichenkette zurück, die den Fehler beschreibt, der beim letzten Versuch, einen Geokodierungs-Manager zu erstellen, aufgetreten ist.

QGeoServiceProvider::GeocodingFeatures QGeoServiceProvider::geocodingFeatures() const

Gibt die vom Geodienstanbieter unterstützten Geokodierungsfunktionen zurück.

QGeoCodingManager *QGeoServiceProvider::geocodingManager() const

Gibt die vom Dienstanbieter bereitgestellten „ QGeoCodingManager “ zurück.

Diese Funktion gibt „ nullptr “ zurück, wenn der Dienstanbieter keine Geokodierungsdienste bereitstellt.

Diese Funktion versucht beim ersten Aufruf, eine „ QGeoCodingManager “-Instanz zu erstellen. Ist der Versuch erfolgreich, wird die „ QGeoCodingManager “-Instanz zwischengespeichert; andernfalls versucht jeder Aufruf dieser Funktion, eine „ QGeoCodingManager “-Instanz zu erstellen, bis die Erstellung erfolgreich ist.

Die ` QGeoCodingManager ` gehört zu dieser ` QGeoServiceProvider ` und sollte nicht separat gelöscht werden. Benutzer sollten davon ausgehen, dass das Löschen der ` QGeoServiceProvider ` den von dieser Methode zurückgegebenen Zeiger ungültig macht.

Nach dem Aufruf dieser Funktion melden die Methoden ` error()` und ` errorString()` alle Fehler, die während der Erstellung der ` QGeoCodingManager` aufgetreten sind.

QGeoServiceProvider::Error QGeoServiceProvider::mappingError() const

Gibt einen Fehlercode zurück, der den Fehler beschreibt, der beim letzten Versuch, einen Mapping-Manager zu erstellen, aufgetreten ist.

QString QGeoServiceProvider::mappingErrorString() const

Gibt eine Zeichenkette zurück, die den Fehler beschreibt, der beim letzten Versuch, einen Mapping-Manager zu erstellen, aufgetreten ist.

QGeoServiceProvider::MappingFeatures QGeoServiceProvider::mappingFeatures() const

Gibt die vom Geodienstanbieter unterstützten Kartierungsfunktionen zurück.

Gibt einen Fehlercode zurück, der den Fehler beschreibt, der beim letzten Versuch, einen Navigationsmanager zu erstellen, aufgetreten ist.

Gibt eine Zeichenkette zurück, die den Fehler beschreibt, der beim letzten Versuch, einen Navigationsmanager zu erstellen, aufgetreten ist.

Gibt die vom Geo-Dienstanbieter unterstützten Navigationsfunktionen zurück.

Diese Funktion wurde in QtLocation 5.11 eingeführt.

QPlaceManager *QGeoServiceProvider::placeManager() const

Gibt die vom Dienstanbieter bereitgestellte „ QPlaceManager “-Instanz zurück.

Diese Funktion versucht beim ersten Aufruf, eine „ QPlaceManager “-Instanz zu erstellen. Ist der Versuch erfolgreich, wird die „ QPlaceManager “-Instanz zwischengespeichert; andernfalls versucht die Funktion bei jedem Aufruf, eine „ QPlace “-Instanz zu erstellen, bis die Erstellung erfolgreich ist.

Der `QGeoPlaceManager` gehört zu diesem ` QGeoServiceProvider ` und sollte nicht separat gelöscht werden. Benutzer sollten davon ausgehen, dass das Löschen des ` QGeoServiceProvider ` den von dieser Methode zurückgegebenen Zeiger ungültig macht.

Nach dem Aufruf dieser Funktion melden die Methoden „ error()“ und „ errorString()“ alle Fehler, die während der Erstellung des „ QPlaceManager “ aufgetreten sind.

QGeoServiceProvider::Error QGeoServiceProvider::placesError() const

Gibt einen Fehlercode zurück, der den Fehler beschreibt, der beim letzten Versuch, einen Orte-Manager zu erstellen, aufgetreten ist.

QString QGeoServiceProvider::placesErrorString() const

Gibt eine Zeichenkette zurück, die den Fehler beschreibt, der beim letzten Versuch, einen Ortsmanager anzulegen, aufgetreten ist.

QGeoServiceProvider::PlacesFeatures QGeoServiceProvider::placesFeatures() const

Gibt die vom Geodienstanbieter unterstützten Ortsobjekte zurück.

QGeoServiceProvider::Error QGeoServiceProvider::routingError() const

Gibt einen Fehlercode zurück, der den Fehler beschreibt, der beim letzten Versuch, einen Routing-Manager zu erstellen, aufgetreten ist.

QString QGeoServiceProvider::routingErrorString() const

Gibt eine Zeichenkette zurück, die den Fehler beschreibt, der beim letzten Versuch, einen Routing-Manager zu erstellen, aufgetreten ist.

QGeoServiceProvider::RoutingFeatures QGeoServiceProvider::routingFeatures() const

Gibt die vom Geodienstanbieter unterstützten Routing-Funktionen zurück.

QGeoRoutingManager *QGeoServiceProvider::routingManager() const

Gibt die vom Dienstanbieter bereitgestellten „ QGeoRoutingManager “ zurück.

Diese Funktion gibt „ nullptr “ zurück, wenn der Dienstanbieter keine geografischen Routing-Dienste bereitstellt.

Diese Funktion versucht beim ersten Aufruf, eine „ QGeoRoutingManager “-Instanz zu erstellen. Ist der Versuch erfolgreich, wird die „ QGeoRoutingManager “-Instanz zwischengespeichert; andernfalls wird bei jedem Aufruf dieser Funktion versucht, eine „ QGeoRoutingManager “-Instanz zu erstellen, bis die Erstellung erfolgreich ist.

Die „ QGeoRoutingManager “ gehört zu diesem „ QGeoServiceProvider “ und sollte nicht separat gelöscht werden. Benutzer sollten davon ausgehen, dass das Löschen der „ QGeoServiceProvider “ den von dieser Methode zurückgegebenen Zeiger ungültig macht.

Nach dem Aufruf dieser Funktion melden die Methoden ` error()` und ` errorString()` alle Fehler, die während der Erstellung der ` QGeoRoutingManager` aufgetreten sind.

void QGeoServiceProvider::setAllowExperimental(bool allow)

Legt fest, ob experimentelle Plugins bei der Suche nach der richtigen Plugin-Bibliothek für diesen Dienstanbieter unter allow berücksichtigt werden sollen.

Wichtig: Dadurch werden alle bestehenden Manager dieser Dienstanbieter-Instanz gelöscht. Sie sollten darauf achten, nach dem Aufruf dieser Methode keine zuvor abgerufenen Zeiger mehr zu verwenden.

void QGeoServiceProvider::setLocale(const QLocale &locale)

Legt die von diesem Dienstanbieter verwendete Ländereinstellung auf „ locale “ fest. Sofern die entsprechenden Funktionen aktiviert sind (siehe LocalizedMappingFeature usw.), werden dadurch die Sprachen, Einheiten und andere länderspezifische Attribute der Daten des Anbieters geändert.

void QGeoServiceProvider::setParameters(const QVariantMap &parameters)

Legt die Parameter fest, die zur Erstellung einzelner Manager-Klassen für diesen Dienstanbieter verwendet werden: parameters.

Bevor die Liste von „ parameters “ an den zu ladenden Dienstanbieter weitergeleitet wird, wird sie gefiltert, um zu vermeiden, dass anbieter-spezifische Parameter mit nicht zugehörigen Dienstanbietern geteilt werden. Anbieter-spezifische Parameterschlüssel müssen mit dem Namen des Anbieters vorangestellt werden (z. B. „ here.app_id “).

Wichtig: Dies löscht alle vorhandenen Manager, die von dieser Dienstanbieter-Instanz verwaltet werden. Sie sollten darauf achten, nach dem Aufruf dieser Methode keine Zeiger mehr zu verwenden, die Sie zuvor abgerufen haben.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.