Поделиться через


Geolocator.GetGeopositionAsync Метод

Определение

Перегрузки

GetGeopositionAsync()

Запускает асинхронную операцию для получения текущего расположения устройства.

GetGeopositionAsync(TimeSpan, TimeSpan)

Запускает асинхронную операцию для получения текущего расположения устройства.

GetGeopositionAsync()

Запускает асинхронную операцию для получения текущего расположения устройства.

public:
 virtual IAsyncOperation<Geoposition ^> ^ GetGeopositionAsync() = GetGeopositionAsync;
/// [Windows.Foundation.Metadata.Overload("GetGeopositionAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<Geoposition> GetGeopositionAsync();
[Windows.Foundation.Metadata.Overload("GetGeopositionAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<Geoposition> GetGeopositionAsync();
function getGeopositionAsync()
Public Function GetGeopositionAsync () As IAsyncOperation(Of Geoposition)

Возвращаемое значение

Асинхронная операция, которая после завершения возвращает геопозицию , помечающую найденное расположение.

Атрибуты

Требования к Windows

Возможности приложения
location ID_CAP_LOCATION [Windows Phone]

Комментарии

Этот метод создает исключение, если приложение не имеет разрешений на расположение или если истекает время ожидания без получения данных о расположении. Поэтому метод следует вызывать в инструкции try/catch, чтобы можно было обрабатывать эти распространенные случаи исключений.

Время ожидания этого метода истекает через 60 секунд, за исключением случаев, когда в режиме ожидания с подключением. Во время ожидания с подключением можно создавать экземпляры объектов Geolocator , но объект Geolocator не найдет никаких датчиков для агрегирования, а время ожидания вызовов GetGeopositionAsync истекает через 7 секунд. После истечения времени ожидания прослушиватели событий StatusChanged будут вызываться один раз с состоянием NoData , а прослушиватели событий PositionChanged никогда не будут вызываться.

Пользователь устанавливает уровень защиты данных о расположении с помощью настроек конфиденциальности сведений о расположении в разделе приложения Настройки. Ваше приложение может получить доступ к расположению пользователя только в следующих случаях:

  • Расположение этого устройства...включен (неприменимо к Windows 10 Mobile)
  • Параметр Местоположение служб определения местоположения включен
  • В разделе Выберите приложения, которым будет разрешено использовать данные о вашем местоположении для вашего приложения установлено значение Вкл.

Важно!

Начиная с Windows 10, вызовите метод RequestAccessAsync перед доступом к расположению пользователя. В этот момент ваше приложение должно находиться на переднем плане, а из потока пользовательского интерфейса должен быть вызван метод RequestAccessAsync. После этого приложение может обработать вариант без разрешений, не вызывая исключения.

См. также раздел

Применяется к

GetGeopositionAsync(TimeSpan, TimeSpan)

Запускает асинхронную операцию для получения текущего расположения устройства.

public:
 virtual IAsyncOperation<Geoposition ^> ^ GetGeopositionAsync(TimeSpan maximumAge, TimeSpan timeout) = GetGeopositionAsync;
/// [Windows.Foundation.Metadata.Overload("GetGeopositionAsyncWithAgeAndTimeout")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<Geoposition> GetGeopositionAsync(TimeSpan const& maximumAge, TimeSpan const& timeout);
[Windows.Foundation.Metadata.Overload("GetGeopositionAsyncWithAgeAndTimeout")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<Geoposition> GetGeopositionAsync(System.TimeSpan maximumAge, System.TimeSpan timeout);
function getGeopositionAsync(maximumAge, timeout)
Public Function GetGeopositionAsync (maximumAge As TimeSpan, timeout As TimeSpan) As IAsyncOperation(Of Geoposition)

Параметры

maximumAge
TimeSpan TimeSpan

Максимальный допустимый возраст кэшированных данных о расположении. TimeSpan — это период времени, выраженный в 100-наносекундных единицах.

timeout
TimeSpan TimeSpan

Время ожидания. TimeSpan — это период времени, выраженный в 100-наносекундных единицах.

Возвращаемое значение

Асинхронная операция, которая после завершения возвращает геопозицию , помечающую найденное расположение.

Атрибуты

Требования к Windows

Возможности приложения
location ID_CAP_LOCATION [Windows Phone]

Комментарии

Расположение будет возвращено немедленно, если последнее расположение находится в пределах допустимого возраста. В противном случае расположение не будет возвращено до следующего изменения. В некоторых случаях приложение может получать данные о расположении, которые старше указанного значения maximumAge . Это связано с тем, что дополнительное значение возраста будет вычисляться на основе требуемого параметра точности, и ваше приложение будет использовать любой из двух возрастов больше. Например, предположим, что точность по умолчанию 500 метров соответствует максимальному возрасту в 30 секунд. В этом случае приложение может получать 20-секундные старые данные, даже если задано значение maximumAge в 10 секунд.

См. также раздел

Применяется к