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


CoreLocation Пространство имен

Пространство имен CoreLocation предоставляет классы для отслеживания и мониторинга расположения, регионов (включая iBeacons) и геокодирования.

Классы

CLAuthorizationChangedEventArgs

Предоставляет данные для события AuthorizationChanged.

CLBeacon

Представляет локальное устройство, которое можно использовать для детального мониторинга расположения.

CLBeaconRegion

Область CoreLocation, определяемая iBeacon.

CLCircularRegion

Определяется CLRegion центром и радиусом (в метрах).

CLFloor

Сведения, описывающие уровень здания.

CLGeocoder

Обеспечивает поддержку преобразования между адресом в текстовой форме и расположением, описанным с помощью широты и долготы, или для преобразования из широты и долготы в понятное расположение (улица, город, штат, страна).

CLHeading

Данные заголовка, созданные CLLocationManager.

CLHeadingUpdatedEventArgs

Предоставляет данные для события UpdatedHeading.

CLLocation

Сведения о расположении, созданные классом CLLocationManager.

CLLocationDistance

Класс, статические члены которого определяют константы, связанные с фильтрацией и максимальным расстоянием.

CLLocationManager

Управляет доставкой событий расположения, региона и заголовка в приложение.

CLLocationManagerDelegate

Виртуальные методы этого класса получают уведомления от CLLocationManager.

CLLocationManagerDelegate_Extensions

Методы расширения интерфейса ICLLocationManagerDelegate для поддержки всех методов из CLLocationManagerDelegate протокола.

CLLocationsUpdatedEventArgs

Предоставляет данные для события LocationsUpdated.

CLLocationUpdatedEventArgs

Предоставляет данные для события UpdatedLocation.

CLPlacemark

Связывает такие данные, как адрес улицы, с координатой.

CLRegion

Базовый класс для отслеживаемых географических регионов.

CLRegionBeaconsFailedEventArgs

Предоставляет данные для события RangingBeaconsDidFailForRegion.

CLRegionBeaconsRangedEventArgs

Предоставляет данные для события DidRangeBeacons.

CLRegionErrorEventArgs

Предоставляет данные для события MonitoringFailed.

CLRegionEventArgs

Предоставляет данные для RegionLeftсобытий E:CoreLocation.CLRegionEventArgs.RegionEntered и E:CoreLocation.CLRegionEventArgs.RegionLeft .

CLRegionStateDeterminedEventArgs

Предоставляет данные для события DidDetermineState.

CLVisit

Связывает расположение и радиус с временем прибытия и отъезда.

CLVisitedEventArgs

Предоставляет данные для события DidVisit.

Структуры

CLLocationCoordinate2D

Географические координаты.

Интерфейсы

ICLLocationManagerDelegate

Интерфейс, представляющий обязательные методы (если таковые есть) протокола CLLocationManagerDelegate.

Перечисления

CLActivityType

Перечисление, значения которого определяют различные типы действий.

CLAuthorizationStatus

Перечисление, значения которого указывают текущее состояние авторизации для использования служб определения местоположения.

CLDeviceOrientation

Перечисление, значения которого представляют физическую ориентацию устройства.

CLError

Ошибки, возвращаемые CLLocationManager.

CLProximity

Перечисление, значения которого определяют физическую близость iBeacon.

CLRegionState

Перечисление, значения которого указывают, находится ли устройство внутри или за пределами региона или неизвестно.

Делегаты

CLGeocodeCompletionHandler

Делегат, который является completionHandler в , вызывает .GeocodePostalAddressAsync(CNPostalAddress, NSLocale)

CLLocationManagerEventArgs

Аргументы события, созданные событием ShouldDisplayHeadingCalibration .

Комментарии

Пространство имен Core Location вращается вокруг отслеживания и мониторинга расположения пользователя, входа и выхода устройства из регионов (фиксированных или на основе iBeacon), а также геокодирования между адресами и расположениями.

Варианты использования геокодирования сосредоточены на CLGeocoder классе . Геокодирование выполняется просто:

async void GeocodeToConsoleAsync (string address) {
    var geoCoder = new CLGeocoder();
    var placemarks = await geoCoder.GeocodeAddressAsync(address);
    foreach (var placemark in placemarks) {
	      Console.WriteLine(placemark);
    }   

Как и обратное геокодирование:

async void ReverseGeocodeToConsoleAsync (CLLocation location) {
    var geoCoder = new CLGeocoder();
    var placemarks = await geoCoder.ReverseGeocodeLocationAsync(location);
    foreach (var placemark in placemarks) {
	      Console.WriteLine(placemark);
    }          
}

Другие варианты использования обычно начинаются с CLLocationManager класса :

  • Отслеживание местоположения устройства
  • Мониторинг регионов (геозона)
  • Диапазон iBeacon

Эти варианты использования рассматриваются в документации по классам CLLocationManager .