このページでは

QGeoServiceProvider Class

QGeoServiceProvider クラスは、地理情報を提供するサービスへのアクセスを集約します。詳細...

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

パブリック型

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

パブリック関数

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)

静的パブリックメンバー

詳細な説明

Maps and Navigation API を使用すると、ジオコーディング、ルート検索、地図の表示などの機能を含め、さまざまな種類の地理情報にアクセスできます。QGeoServiceProvider は、単一のベンダーによって提供される一連のサービスへのアクセスを集約します。

さまざまなドメインのサービスプロバイダを組み合わせて使用することが可能であり、あるサービスプロバイダのジオコーディングマネージャーを、別のサービスプロバイダの地理的ルーティングマネージャーと併用することができます。

ただし、基盤となるデータセットの違いによってサービス間で深刻な不整合が生じる可能性があるため、クライアントが異なるサービスによって提供されるデータの互換性を確認できない限り、この方法は推奨されません。

QGeoServiceProvider のサブクラスは、それらが提供するさまざまなサービス間の相互運用性を保証します。

各サービスプロバイダは、そのサービス固有のパラメータ名/キーについて、命名規則に従わなければなりません。すべてのパラメータ名には、プロバイダ名をプレフィックスとして使用します。プロバイダが読み込まれると、パラメータ名がプロバイダ名で始まるもののみが渡されます。これにより、機密性の高いパラメータ(token やapp_id など)が他のプラグインと共有されるのを防ぐことができます。

利用可能なパラメータ名/キーおよび値の完全な一覧については、GeoServicesプラグインの専用ドキュメントをご確認ください。

メンバタイプのドキュメント

enum QGeoServiceProvider::Error

サービスプロバイダープラグインの読み込みおよび設定に関連するエラーについて説明します。

定数値説明
QGeoServiceProvider::NoError0エラーは発生していません。
QGeoServiceProvider::NotSupportedError1このプラグインはこの機能をサポートしていません。
QGeoServiceProvider::UnknownParameterError2プラグインが指定されたパラメータの 1 つを認識できませんでした。
QGeoServiceProvider::MissingRequiredParameterError3プラグインが期待していたパラメータのいずれかが見つかりませんでした。
QGeoServiceProvider::ConnectionError4プラグインがバックエンドサービスまたはデータベースに接続できませんでした。
QGeoServiceProvider::LoaderError5プラグインの読み込みに失敗しました。

enum QGeoServiceProvider::GeocodingFeature
flags QGeoServiceProvider::GeocodingFeatures

ジオサービスプロバイダーがサポートするジオコーディング機能について説明します。

定数値説明
QGeoServiceProvider::NoGeocodingFeatures0ジオコーディング機能はサポートされていません。
QGeoServiceProvider::OnlineGeocodingFeature(1<<0)オンライン・ジオコーディングがサポートされています。
QGeoServiceProvider::OfflineGeocodingFeature(1<<1)オフラインのジオコーディングがサポートされています。
QGeoServiceProvider::ReverseGeocodingFeature(1<<2)リバースジオコーディングがサポートされています。
QGeoServiceProvider::LocalizedGeocodingFeature(1<<3)ローカライズされた住所を含むジオコーディング結果の返却に対応しています。
QGeoServiceProvider::AnyGeocodingFeatures~(0)いずれかのジオコーディング機能を提供するジオサービスプロバイダーと一致します。

GeocodingFeatures 型は、QFlags<GeocodingFeature> の typedef です。これは、GeocodingFeature 値の OR 組み合わせを格納します。

enum QGeoServiceProvider::MappingFeature
flags QGeoServiceProvider::MappingFeatures

ジオサービスプロバイダーがサポートするマッピング機能について説明します。

定数値説明
QGeoServiceProvider::NoMappingFeatures0マッピング機能はサポートされていません。
QGeoServiceProvider::OnlineMappingFeature(1<<0)オンライン マッピングがサポートされています。
QGeoServiceProvider::OfflineMappingFeature(1<<1)オフラインのマッピングがサポートされています。
QGeoServiceProvider::LocalizedMappingFeature(1<<2)ローカライズされた地図データの返却に対応しています。
QGeoServiceProvider::AnyMappingFeatures~(0)任意のマッピング機能を提供するジオサービスプロバイダーに一致します。

MappingFeatures 型は、QFlags<MappingFeature> の typedef です。MappingFeature 値の OR 組み合わせを格納します。

ジオサービスプロバイダーがサポートするナビゲーション機能について説明します。

定数値説明
QGeoServiceProvider::NoNavigationFeatures0ナビゲーション機能はサポートされていません。
QGeoServiceProvider::OnlineNavigationFeature(1<<0)オンラインナビゲーションがサポートされています。
QGeoServiceProvider::OfflineNavigationFeature(1<<1)オフラインナビゲーションがサポートされています。
QGeoServiceProvider::AnyNavigationFeatures~(0)いずれかのナビゲーション機能を提供する地理情報サービスプロバイダに一致します。

NavigationFeatures 型は、QFlags<NavigationFeature> の typedef です。NavigationFeature 値の OR 組み合わせを格納します。

enum QGeoServiceProvider::PlacesFeature
flags QGeoServiceProvider::PlacesFeatures

ジオサービスプロバイダーがサポートする場所の特徴について説明します。

定数値説明
QGeoServiceProvider::NoPlacesFeatures0場所フィーチャはサポートされていません。
QGeoServiceProvider::OnlinePlacesFeature(1<<0)オンラインの場所がサポートされています。
QGeoServiceProvider::OfflinePlacesFeature(1<<1)オフラインの場所がサポートされています。
QGeoServiceProvider::SavePlaceFeature(1<<2)場所の保存がサポートされています。
QGeoServiceProvider::RemovePlaceFeature(1<<3)場所の削除に対応しています。
QGeoServiceProvider::SaveCategoryFeature(1<<4)カテゴリの保存に対応しています。
QGeoServiceProvider::RemoveCategoryFeature(1<<5)カテゴリの削除に対応しています。
QGeoServiceProvider::PlaceRecommendationsFeature(1<<6)別の場所に似たおすすめの場所を検索する機能がサポートされています。
QGeoServiceProvider::SearchSuggestionsFeature(1<<7)検索候補機能がサポートされています。
QGeoServiceProvider::LocalizedPlacesFeature(1<<8)ローカライズされたスポットデータの返却に対応しています。
QGeoServiceProvider::NotificationsFeature(1<<9)場所やカテゴリの変更に関する通知に対応しています。
QGeoServiceProvider::PlaceMatchingFeature(1<<10)2つの異なる地理情報サービスプロバイダからの場所の照合に対応しています。
QGeoServiceProvider::AnyPlacesFeatures~(0)場所に関する機能を提供するジオサービスプロバイダーと照合します。

PlacesFeatures 型は、QFlags<PlacesFeature> の typedef です。PlacesFeature 値の OR 組み合わせを格納します。

enum QGeoServiceProvider::RoutingFeature
flags QGeoServiceProvider::RoutingFeatures

ジオサービスプロバイダーがサポートするルーティング機能について説明します。

定数値説明
QGeoServiceProvider::NoRoutingFeatures0ルーティング機能はサポートされていません。
QGeoServiceProvider::OnlineRoutingFeature(1<<0)オンライン ルーティングがサポートされています。
QGeoServiceProvider::OfflineRoutingFeature(1<<1)オフライン・ルーティングがサポートされています。
QGeoServiceProvider::LocalizedRoutingFeature(1<<2)ローカライズされた住所および案内付きのルートの返却に対応しています。
QGeoServiceProvider::RouteUpdatesFeature(1<<3)現在の位置情報に基づいて既存のルートを更新する機能をサポートしています。
QGeoServiceProvider::AlternativeRoutesFeature(1<<4)代替ルートの返却に対応しています。
QGeoServiceProvider::ExcludeAreasRoutingFeature(1<<5)返されるルートが通過してはならないエリアを指定できます。
QGeoServiceProvider::AnyRoutingFeatures~(0)ルート案内機能を提供するジオサービスプロバイダと一致します。

RoutingFeatures 型は、QFlags<RoutingFeature> の typedef です。これは、RoutingFeature 値の OR 組み合わせを格納します。

メンバ関数のドキュメント

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

指定されたparameters を使用して、バックエンド名がproviderName であるQGeoServiceProviderを構築します。

複数のプラグインでproviderName が同じ場合、providerVersion()の値が最も大きいプラグインが使用されます。

allowExperimental が true の場合、実験的とマークされたプラグインが使用されることがあります。デフォルトでは、実験的なプラグインは考慮されません。

providerName に一致するプラグインをロードできなかった場合、error() およびerrorString() がその理由に関する詳細情報を提供します。

注: parameters のリストが読み込まれるプロバイダープラグインに渡される前に 、無関係なプロバイダープラグインとの間でプラグイン固有のパラメータが共有されるのを防ぐため、リストはフィルタリングされます。プラグイン固有のパラメータキーには、プロバイダー名をプレフィックスとして付ける必要があります(例:here.app_id )。

[virtual noexcept] QGeoServiceProvider::~QGeoServiceProvider()

サービスプロバイダオブジェクトを破棄します。

[static] QStringList QGeoServiceProvider::availableServiceProviders()

QGeoServiceProvider のコンストラクタで使用するための、利用可能なサービスプロバイダの名前の一覧を返します。

QGeoServiceProvider::Error QGeoServiceProvider::error() const

このクラスによって実行された直近の操作中に発生したエラーを説明するエラーコードを返します。

QString QGeoServiceProvider::errorString() const

このクラスによって実行された直近の操作中に発生したエラーを説明する文字列を返します。

QGeoServiceProvider::Error QGeoServiceProvider::geocodingError() const

ジオコーディングマネージャーの作成を最後に試みた際に発生したエラーを説明するエラーコードを返します。

QString QGeoServiceProvider::geocodingErrorString() const

ジオコーディングマネージャーの作成を最後に試みた際に発生したエラーを説明する文字列を返します。

QGeoServiceProvider::GeocodingFeatures QGeoServiceProvider::geocodingFeatures() const

そのジオサービスプロバイダーがサポートしているジオコーディング機能を返します。

QGeoCodingManager *QGeoServiceProvider::geocodingManager() const

サービスプロバイダーが提供しているQGeoCodingManager を返します。

サービスプロバイダがジオコーディングサービスを提供していない場合、この関数はnullptr を返します。

この関数は、初めて呼び出された際にQGeoCodingManager インスタンスの生成を試みます。生成に成功した場合、QGeoCodingManager はキャッシュされます。そうでない場合、この関数が呼び出されるたびに、生成に成功するまでQGeoCodingManager インスタンスの生成が試みられます。

QGeoCodingManager はこのQGeoServiceProvider が所有しており、個別に削除してはなりません。ユーザーは、QGeoServiceProvider を削除すると、このメソッドによって返されたポインタが無効になることを前提としてください。

この関数が呼び出された後、error() およびerrorString() は、QGeoCodingManager の生成中に発生したエラーを報告します。

QGeoServiceProvider::Error QGeoServiceProvider::mappingError() const

マッピングマネージャーの作成を最後に試みた際に発生したエラーを説明するエラーコードを返します。

QString QGeoServiceProvider::mappingErrorString() const

マッピングマネージャーの作成を最後に試みた際に発生したエラーを説明する文字列を返します。

QGeoServiceProvider::MappingFeatures QGeoServiceProvider::mappingFeatures() const

そのジオサービスプロバイダーがサポートしているマッピング機能を返します。

ナビゲーションマネージャーの作成を最後に試みた際に発生したエラーを説明するエラーコードを返します。

ナビゲーションマネージャーの作成を最後に試みた際に発生したエラーを説明する文字列を返します。

ジオサービスプロバイダがサポートしているナビゲーション機能を返します。

この関数は、QtLocation 5.11で導入されました。

QPlaceManager *QGeoServiceProvider::placeManager() const

サービスプロバイダによって提供されたQPlaceManager を返します。

この関数は、初めて呼び出された際にQPlaceManager インスタンスの生成を試みます。生成に成功した場合、QPlaceManager はキャッシュされます。そうでない場合、この関数が呼び出されるたびに、生成に成功するまでQPlace インスタンスの生成が試みられます。

QGeoPlaceManagerはこのQGeoServiceProvider によって管理されており、個別に削除してはなりません。ユーザーは、QGeoServiceProvider を削除すると、このメソッドによって返されたポインタが無効になることを前提としてください。

この関数が呼び出された後、error() およびerrorString() は、QPlaceManager の生成中に発生したエラーを報告します。

QGeoServiceProvider::Error QGeoServiceProvider::placesError() const

プレイスマネージャーの作成を最後に試みた際に発生したエラーを説明するエラーコードを返します。

QString QGeoServiceProvider::placesErrorString() const

プレイスマネージャーの作成を最後に試みた際に発生したエラーを説明する文字列を返します。

QGeoServiceProvider::PlacesFeatures QGeoServiceProvider::placesFeatures() const

そのジオサービスプロバイダーがサポートしている場所フィーチャを返します。

QGeoServiceProvider::Error QGeoServiceProvider::routingError() const

ルーティングマネージャーの作成を最後に試みた際に発生したエラーを説明するエラーコードを返します。

QString QGeoServiceProvider::routingErrorString() const

ルーティングマネージャーの作成を最後に試みた際に発生したエラーを説明する文字列を返します。

QGeoServiceProvider::RoutingFeatures QGeoServiceProvider::routingFeatures() const

その地理空間サービスプロバイダーがサポートしているルーティング機能を返します。

QGeoRoutingManager *QGeoServiceProvider::routingManager() const

サービスプロバイダーが提供するQGeoRoutingManager を返します。

サービスプロバイダが地理的ルーティングサービスを提供していない場合、この関数はnullptr を返します。

この関数は、初めて呼び出された際にQGeoRoutingManager インスタンスの生成を試みます。生成に成功した場合、QGeoRoutingManager はキャッシュされます。そうでない場合、この関数が呼び出されるたびに、生成に成功するまでQGeoRoutingManager インスタンスの生成が試みられます。

QGeoRoutingManager はこのQGeoServiceProvider が所有しており、個別に削除してはなりません。ユーザーは、QGeoServiceProvider を削除すると、このメソッドによって返されたポインタが無効になることを想定しておく必要があります。

この関数が呼び出された後、error() およびerrorString() は、QGeoRoutingManager の構築中に発生したエラーを報告します。

void QGeoServiceProvider::setAllowExperimental(bool allow)

このサービスプロバイダに対してallow の正しいプラグインライブラリを検索する際、実験的なプラグインを考慮するかどうかを設定します。

重要:このメソッドを呼び出すと、このサービスプロバイダインスタンスが保持している既存のマネージャーはすべて破棄されます。このメソッドの呼び出し後に、以前に取得したポインタを使用しようとしないよう注意してください。

void QGeoServiceProvider::setLocale(const QLocale &locale)

このサービスプロバイダが使用するロケールを `locale` に設定します。関連する機能(LocalizedMappingFeature など)が有効になっている場合、これにより、プロバイダのデータにおける言語、単位、およびその他のロケール固有の属性が変更されます。

void QGeoServiceProvider::setParameters(const QVariantMap &parameters)

このサービスプロバイダ用の個々のマネージャークラスを構築するために使用されるパラメータを、parameters に設定します。

parameters のリストが、読み込まれる予定のサービスプロバイダに渡される前に、そのリストはフィルタリングされ、無関係なサービスプロバイダとの間でプロバイダ固有のパラメータが共有されるのを防ぎます。プロバイダ固有のパラメータキーには、プロバイダ名をプレフィックスとして付ける必要があります(例:here.app_id )。

重要:これにより、このサービスプロバイダインスタンスが保持している既存のマネージャーはすべて破棄されます。このメソッドを呼び出した後は、以前に取得したポインタを使用しようとしないよう注意してください。

© 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.