Geolocator Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет доступ к текущему географическому расположению.
public ref class Geolocator sealed
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Geolocator final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class Geolocator final
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class Geolocator
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class Geolocator
function Geolocator()
Public NotInheritable Class Geolocator
- Наследование
- Атрибуты
Требования к Windows
Семейство устройств |
Windows 10 (появилось в 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (появилось в v1.0)
|
Возможности приложения |
location
ID_CAP_LOCATION [Windows Phone]
|
Примеры
В этом примере показано, как использовать класс Geolocator для получения расположения устройства. Дополнительные сведения см. в статье Получение сведений о текущем местоположении.
using Windows.Devices.Geolocation;
...
var accessStatus = await Geolocator.RequestAccessAsync();
switch (accessStatus)
{
case GeolocationAccessStatus.Allowed:
// notify user: Waiting for update
// If DesiredAccuracy or DesiredAccuracyInMeters are not set (or value is 0), DesiredAccuracy.Default is used.
Geolocator geolocator = new Geolocator { DesiredAccuracyInMeters = _desireAccuracyInMetersValue };
// Subscribe to StatusChanged event to get updates of location status changes
_geolocator.StatusChanged += OnStatusChanged;
// Carry out the operation
Geoposition pos = await geolocator.GetGeopositionAsync();
UpdateLocationData(pos);
// notify user: Location updated
break;
case GeolocationAccessStatus.Denied:
// notify user: Access to location is denied
break;
case GeolocationAccessStatus.Unspecified:
// notify user: Unspecified error
break;
}
Комментарии
Журнал версий
Версия Windows | Версия пакета SDK | Добавленная стоимость |
---|---|---|
1607 | 14393 | AllowFallbackToConsentlessPositions |
1607 | 14393 | DefaultGeoposition |
1607 | 14393 | IsDefaultGeopositionRecommended |
Конструкторы
Geolocator() |
Инициализирует новый объект Geolocator . |
Свойства
DefaultGeoposition |
Возвращает расположение, введенное пользователем вручную в систему, которое будет использоваться, если нет лучших вариантов. |
DesiredAccuracy |
Уровень точности, при котором геолокатор предоставляет обновления расположения. |
DesiredAccuracyInMeters |
Возвращает или задает требуемую точность в метрах для данных, возвращаемых службой определения местоположения. |
IsDefaultGeopositionRecommended |
Указывает, следует ли пользователю предлагать вручную задать расположение по умолчанию. |
LocationStatus |
Состояние, указывающее на возможность геолокатора предоставлять обновления расположения. |
MovementThreshold |
Расстояние перемещения (в метрах) относительно координаты от последнего события PositionChanged , необходимое геолокатору для создания события PositionChanged . |
ReportInterval |
Запрошенный минимальный интервал времени между обновлениями расположения в миллисекундах. Если вашему приложению требуются обновления нечасто, задайте это значение, чтобы службы определения местоположения могли экономить энергию, вычисляя расположение только при необходимости. |
Методы
AllowFallbackToConsentlessPositions() |
Задает геолокатор для использования грубого расположения в качестве резервного варианта (см. примечания). |
GetGeopositionAsync() |
Запускает асинхронную операцию для получения текущего расположения устройства. |
GetGeopositionAsync(TimeSpan, TimeSpan) |
Запускает асинхронную операцию для получения текущего расположения устройства. |
GetGeopositionHistoryAsync(DateTime, TimeSpan) |
Запускает асинхронную операцию для получения журнала расположения устройства. Примечание Этот API доступен не для всех приложений Windows. Если ваша учетная запись разработчика не специально подготовлена корпорацией Майкрософт, вызовы этих API будут завершаться ошибкой во время выполнения. |
GetGeopositionHistoryAsync(DateTime) |
Запускает асинхронную операцию для получения журнала расположения устройства. Примечание Этот API доступен не для всех приложений Windows. Если ваша учетная запись разработчика не специально подготовлена корпорацией Майкрософт, вызовы этих API будут завершаться ошибкой во время выполнения. |
RequestAccessAsync() |
Примечание Некоторые сведения относятся к предварительной версии продукта, в которую перед коммерческим выпуском могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений. Важно! На этот API повлияют предстоящие изменения в поведении операционной системы, запланированные на осень 2024 года. Дополнительные сведения см. в статье Изменения в поведении API для Wi-Fi доступа и расположения. Запрашивает разрешение на доступ к данным о расположении. |
События
PositionChanged |
Возникает при обновлении расположения. |
StatusChanged |
Возникает при изменении возможности геолокатора предоставлять обновленное расположение. |