https://developer.apple.com/documentation/corelocation/cllocationmanager
"The object that you use to start and stop the delivery of location-related events to your app."
앱에 위치 관련 이벤트 전달을 시작하거나 중단하기 위해 사용하는 객체입니다.
class CLLocationManager : NSObject
코어 로케이션 서비스 설정, 시작, 중지를 설정하기 위해 이 클래스의 인스턴슬르 사용할 수 있습니다. 위치 매니저 객체는 아래 위치 관련 활동을 지원합니다.
CLLocationManagerDelegate
프로토콜을 따르면서 딜리게이트 속성에 커스텀 객체를 할당하시기 바랍니다. 위치 매니저가 초기화를 완료할 때 딜리게이트에서 locationManagerDidChangeAuthorization(_:)
시스템 호출을 놓치지 않기 위해 딜리게이트를 즉시 할당해야 합니다. 코어 로케이션은 CLLocationManager
를 초기화했던 스레드의 런루프를 사용해서 딜리게이트 객체의 메소드를 호출합니다. 해당 스레드는 앱의 메인 스레드에서 찾을 수 있는 하나처럼 스스로 활성화된 런루프를 가져야 합니다.
위치 매니저를 생성할 때 시스템은 딜리게이트의 locationManagerDidChangeAuthorization(_:)
메소드를 즉시 호출하며, 앱의 권한이 변경될 때 다시 호출합니다. 딜리게이트는 모든 위치 및 헤딩 관련 업데이트와 이벤트를 처리합니다.
더 많은 정보는 Adding Location Services to Your App을 보시기 바랍니다.
Adding Location Services to Your App
https://developer.apple.com/documentation/corelocation/adding_location_services_to_your_app
https://velog.io/@panther222128/Adding-Location-Services-to-Your-App
https://developer.apple.com/documentation/corelocation/adding_location_services_to_your_app
https://velog.io/@panther222128/Adding-Location-Services-to-Your-App