Info.plist에 넣기
- NSLocationWhenInUseUsageDescription
- NSLocationAlwaysAndWhenInUseUsageDescription
- NSLocationUsageDescription - 옛날 키워드임. iOS 8.0까지만 썼음
- NSLocationAlwaysUsageDescription - 옛날 키워드임. iOS 10.0까지만 썼음
iOS14에서 추가된 위치 권한들(Precision, Widget 관련임)
- NSLocationTemporaryUsageDescriptionDictionary
- NSLocationDefaultAccuracyReduced
- NSWidgetWantsLocation
권한 묻기
CLLocationManager 객체의 requestWhenInUseAuthorization나 requestAlwaysAuthorization를 호출한다.
- 권한 상태 확인은 authorizationStatus로 함
- 현재 권한 상태가 .notDetermined 일 때
- 현재 권한 상태가 .authorizedWhenInUse 상태일 때
권한 처리
CLLocationManager의 delegate으로 locationManagerDidChangeAuthorization 메서드를 구현해서 앱에서 권한의 변화를 감지함