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 ¶meters = 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 ¶meters) |
정적 공용 멤버
QStringList | availableServiceProviders() |
상세 설명
지도 및 내비게이션 API를 사용하면 지오코딩, 라우팅 및 지도 표시를 수행하는 기능을 포함하여 다양한 종류의 지리 정보에 액세스할 수 있습니다. QGeo서비스제공자는 단일 공급업체가 제공하는 이러한 서비스 집합에 대한 액세스를 집계합니다.
다양한 도메인에 대한 서비스 제공업체를 혼합하여 일치시킬 수 있으므로 한 서비스 제공업체의 지오코딩 관리자를 다른 서비스 제공업체의 지리적 라우팅 관리자와 함께 사용할 수 있습니다.
기본 데이터 세트의 차이로 인해 서비스 간에 심각한 불일치가 발생할 수 있으므로 클라이언트가 서로 다른 서비스에서 제공하는 데이터가 호환되는지 확인할 수 있는 경우가 아니라면 이 방법은 권장되지 않습니다.
QGeoServiceProvider의 서브클래스는 그들이 제공하는 서로 다른 서비스가 상호 운용 가능함을 보장합니다.
각 서비스 제공자는 서비스별 매개변수 이름/키에 대해 명명 규칙을 따라야 합니다. 모든 매개변수 이름의 접두사로 공급자 이름을 사용합니다. 공급자가 로드될 때 매개변수 이름이 공급자 이름으로 시작하는 매개변수만 전달됩니다. 이렇게 하면 기밀 token
또는 app_id
매개변수와 같은 민감한 매개변수를 다른 플러그인과 공유하는 것을 방지할 수 있습니다.
사용 가능한 매개변수 이름/키 및 값의 전체 목록은 GeoServices 플러그인별 설명서를 참조하세요.
회원 유형 문서
enum QGeoServiceProvider::Error
서비스 제공업체 플러그인의 로딩 및 설정과 관련된 오류를 설명합니다.
Constant | 값 | 설명 |
---|---|---|
QGeoServiceProvider::NoError | 0 | 오류가 발생하지 않았습니다. |
QGeoServiceProvider::NotSupportedError | 1 | 플러그인이 이 기능을 지원하지 않습니다. |
QGeoServiceProvider::UnknownParameterError | 2 | 플러그인이 주어진 매개변수 중 하나를 인식하지 못했습니다. |
QGeoServiceProvider::MissingRequiredParameterError | 3 | 플러그인이 예상한 매개변수 중 하나를 찾지 못했습니다. |
QGeoServiceProvider::ConnectionError | 4 | 플러그인이 백엔드 서비스 또는 데이터베이스에 연결할 수 없습니다. |
QGeoServiceProvider::LoaderError | 5 | 플러그인을 로드하지 못했습니다. |
열거형 QGeo서비스제공자::지오코딩 기능
플래그 QGeo서비스제공자::지오코딩 기능
지오 서비스 공급자가 지원하는 지오코딩 기능을 설명합니다.
상수 | 값 | 설명 |
---|---|---|
QGeoServiceProvider::NoGeocodingFeatures | 0 | 지오코딩 기능이 지원되지 않습니다. |
QGeoServiceProvider::OnlineGeocodingFeature | (1<<0) | 온라인 지오코딩이 지원됩니다. |
QGeoServiceProvider::OfflineGeocodingFeature | (1<<1) | 오프라인 지오코딩이 지원됩니다. |
QGeoServiceProvider::ReverseGeocodingFeature | (1<<2) | 역 지오코딩이 지원됩니다. |
QGeoServiceProvider::LocalizedGeocodingFeature | (1<<3) | 지역화된 주소로 지오코딩 결과 반환을 지원합니다. |
QGeoServiceProvider::AnyGeocodingFeatures | ~(0) | 지오코딩 기능을 제공하는 지오코딩 서비스 제공업체와 일치합니다. |
지오코딩 기능 유형은 QFlags<지오코딩 기능>에 대한 타입 정의입니다. GeocodingFeature 값의 OR 조합을 저장합니다.
열거형 QGeo서비스제공자::매핑기능
플래그 QGeo서비스제공자::매핑기능
지오 서비스 제공자가 지원하는 매핑 기능을 설명합니다.
Constant | 값 | 설명 |
---|---|---|
QGeoServiceProvider::NoMappingFeatures | 0 | 매핑 기능이 지원되지 않습니다. |
QGeoServiceProvider::OnlineMappingFeature | (1<<0) | 온라인 매핑이 지원됩니다. |
QGeoServiceProvider::OfflineMappingFeature | (1<<1) | 오프라인 매핑이 지원됩니다. |
QGeoServiceProvider::LocalizedMappingFeature | (1<<2) | 지역화된 지도 데이터 반환을 지원합니다. |
QGeoServiceProvider::AnyMappingFeatures | ~(0) | 매핑 기능을 제공하는 지리적 서비스 제공업체와 일치합니다. |
MappingFeatures 유형은 QFlags<MappingFeature>에 대한 typedef입니다. MappingFeature 값의 OR 조합을 저장합니다.
열거형 QGeo서비스제공자::내비게이션 기능
플래그 QGeo서비스제공자::내비게이션 기능
지리 서비스 제공자가 지원하는 내비게이션 기능을 설명합니다.
상수 | 값 | 설명 |
---|---|---|
QGeoServiceProvider::NoNavigationFeatures | 0 | 내비게이션 기능이 지원되지 않습니다. |
QGeoServiceProvider::OnlineNavigationFeature | (1<<0) | 온라인 내비게이션이 지원됩니다. |
QGeoServiceProvider::OfflineNavigationFeature | (1<<1) | 오프라인 내비게이션이 지원됩니다. |
QGeoServiceProvider::AnyNavigationFeatures | ~(0) | 내비게이션 기능을 제공하는 지리적 서비스 제공업체와 일치합니다. |
NavigationFeatures 유형은 QFlags<NavigationFeature>에 대한 typedef입니다. NavigationFeature 값의 OR 조합을 저장합니다.
열거형 QGeo서비스제공자::장소 기능
플래그 QGeo서비스제공자::장소 기능
지리 서비스 제공자가 지원하는 장소 기능을 설명합니다.
상수 | 값 | 설명 |
---|---|---|
QGeoServiceProvider::NoPlacesFeatures | 0 | 장소 기능이 지원되지 않습니다. |
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) | 서로 다른 두 위치 정보 서비스 제공업체의 장소 매칭을 지원합니다. |
QGeoServiceProvider::AnyPlacesFeatures | ~(0) | 장소 기능을 제공하는 지리적 서비스 제공업체를 일치시킵니다. |
PlacesFeatures 유형은 QFlags<PlacesFeature>에 대한 typedef입니다. PlacesFeature 값의 OR 조합을 저장합니다.
열거형 QGeo서비스제공자::라우팅 기능
플래그 QGeo서비스제공자::라우팅 기능
위치 정보 서비스 제공자가 지원하는 라우팅 기능을 설명합니다.
상수 | 값 | 설명 |
---|---|---|
QGeoServiceProvider::NoRoutingFeatures | 0 | 라우팅 기능이 지원되지 않습니다. |
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 ¶meters = QVariantMap(), bool allowExperimental = false)
제공된 parameters 을 사용하여 백엔드 이름이 providerName 인 QGeoServiceProvider를 구축합니다.
여러 플러그인이 동일한 providerName 을 가지고 있는 경우, 가장 높은 providerVersion()이 보고된 플러그인이 사용됩니다.
allowExperimental 이 참이면 실험 중인 것으로 표시된 플러그인이 사용될 수 있습니다. 기본적으로 실험용 플러그인은 고려되지 않습니다.
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
지리적 서비스 제공업체가 지원하는 매핑 기능을 반환합니다.
QGeoServiceProvider::Error QGeoServiceProvider::navigationError() const
마지막으로 탐색 관리자를 만들려고 시도하는 동안 발생한 오류를 설명하는 오류 코드를 반환합니다.
QString QGeoServiceProvider::navigationErrorString() const
마지막으로 탐색 관리자를 만들려고 시도하는 동안 발생한 오류를 설명하는 문자열을 반환합니다.
[since QtLocation 5.11]
QGeoServiceProvider::NavigationFeatures QGeoServiceProvider::navigationFeatures() 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 ¶meters)
이 서비스 제공업체의 개별 관리자 클래스를 구성하는 데 사용되는 매개 변수를 parameters 로 설정합니다.
parameters 의 목록이 로드될 서비스 공급자에게 전달되기 전에 관련 없는 서비스 공급자와 공급자 특정 매개변수가 공유되지 않도록 목록을 필터링합니다. 공급자별 매개변수 키 앞에 공급자 이름(예: here.app_id
)을 붙여야 합니다.
중요: 이렇게 하면 이 서비스 공급자 인스턴스가 보유한 기존 관리자가 모두 삭제됩니다. 이 메서드를 호출한 후 이전에 검색한 포인터를 사용하지 않도록 주의해야 합니다.
© 2025 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.