Windows.Devices.Geolocation Пространство имен
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет API для получения текущего расположения или отслеживания местоположения устройства с течением времени. Сведения о местоположении могут поступать из оценки положения маяков, таких как Wi-Fi точки доступа и башни сотовой связи, с IP-адреса устройства, или из других источников, таких как устройство GNSS или GPS. API Windows.Devices.Geolocation предоставляет наиболее подходящие данные о геолокации из всех доступных источников.
Точность сведений о расположении зависит от источника. Широта и долгота могут отличаться в следующих диапазонах:
- GPS: в пределах приблизительно 10 метров
- Wi-Fi: от 30 до 500 метров
- Башни сотовой связи: от приблизительно 300 метров до 3000 метров
- IP-адрес: от приблизительно 1000 метров до 5000 метров
В дополнение к широте и долготе, GPS также предоставляет информацию о направлении, скорости и высоте. Эти дополнительные сведения являются необязательными, если сведения о расположении поступают из других источников.
Пользователь устанавливает уровень защиты данных о расположении с помощью настроек конфиденциальности сведений о расположении в разделе приложения Настройки. Ваше приложение может получить доступ к расположению пользователя только в следующих случаях:
- Расположение для этого устройства...включен (неприменимо к Windows 10 Mobile)
- Параметр Местоположение служб определения местоположения включен
- В разделе Выберите приложения, которым будет разрешено использовать данные о вашем местоположении для вашего приложения установлено значение Вкл.
Дополнительные сведения о конфиденциальности расположения см. в заявлении о конфиденциальности Windows.
Важно!
Начиная с Windows 10, вызовите RequestAccessAsync перед доступом к расположению пользователя. В этот момент ваше приложение должно находиться на переднем плане, а из потока пользовательского интерфейса должен быть вызван метод RequestAccessAsync. До тех пор пока пользователь не предоставит вашему приложению разрешение на доступ к данным о местоположении, приложение не сможет использовать такие данные.
Архитектура служб определения местоположения
Первый уровень архитектуры служб определения местоположения состоит из оборудования на устройстве. Сюда входит gps-приемник, Wi-Fi и сотовое радио. Все они могут работать в качестве поставщиков данных о местоположении с различными уровнями точности и энергопотребления. Поверх оборудования находится уровень машинного кода. Этот уровень напрямую взаимодействует с доступными источниками данных о расположении и решает, какие источники следует использовать для определения расположения устройства на основе доступности данных и требований к производительности, заданных приложением. Уровень машинного кода также взаимодействует через Интернет с веб-службой, размещенной корпорацией Майкрософт, для поиска сведений о расположении из базы данных. Верхний уровень службы определения местоположения — это управляемый интерфейс, предоставляемый через библиотеку DLL, которая входит в состав Windows SDK. Приложение использует этот интерфейс для запуска и остановки запросов о расположении, для установки уровня точности, необходимого приложению, и для получения данных о расположении из уровня машинного кода по мере их доступности.
Классы
CivicAddress |
Неподдерживаемый API. |
GeoboundingBox |
Представляет прямоугольник, определяющий географическую область. |
Geocircle |
Описывает географический круг с центральной точкой и радиусом. |
Geocoordinate |
Содержит сведения для определения географического расположения. |
GeocoordinateSatelliteData |
Предоставляет дополнительные сведения о геообъекте. Эта информация применима только к оценкам положения, полученным с помощью спутниковых сигналов. |
Geolocator |
Предоставляет доступ к текущему географическому расположению. |
Geopath |
Представляет упорядоченный ряд географических точек. |
Geopoint |
Описывает географическую точку. |
Geoposition |
Представляет расположение, которое может содержать данные широты и долготы или данные о месте проведения. |
Geovisit |
Представляет изменение состояния, связанного с посещением. Сведения об использовании этой функции см. в разделе Рекомендации по использованию отслеживания посещений . |
GeovisitMonitor |
Обрабатывает мониторинг посещений пользователя, когда приложение используется (не в фоновом режиме). |
GeovisitStateChangedEventArgs |
Содержит сведения о событии VisitStateChanged . |
GeovisitTriggerDetails |
Управляет сведениями о триггере для фоновой задачи, связанной с посещениями. |
PositionChangedEventArgs |
Предоставляет данные для события PositionChanged . |
StatusChangedEventArgs |
Предоставляет сведения для события StatusChanged . |
VenueData |
Представляет место проведения, связанное с географическим расположением. |
Структуры
BasicGeoposition |
Основные сведения для описания географического положения. |
Интерфейсы
IGeoshape |
Интерфейс для определения географической фигуры. |
Перечисления
AltitudeReferenceSystem |
Указывает систему ссылок высоты, которая будет использоваться при определении географической фигуры. |
GeolocationAccessStatus |
Указывает, имеет ли ваше приложение разрешение на доступ к данным о расположении. |
GeoshapeType |
Указывает форму географического региона. |
PositionAccuracy |
Указывает запрошенный уровень точности для данных о расположении, которые использует приложение. |
PositionSource |
Указывает источник, используемый для получения геообъекта. |
PositionStatus |
Указывает возможность объекта Geolocator предоставлять данные о расположении. |
VisitMonitoringScope |
Содержит значения, описывающие предполагаемую область мониторинга расположения для использования с функцией посещений. |
VisitStateChange |
Содержит значения, описывающие изменение состояния, связанное с посещением. |
Примеры
Примеры приложений, которые используют классы из этого пространства имен, включают пример геолокации и пример Geotag.