Responding to Changes in Authorization Status

Panther·2021년 8월 21일
0
post-custom-banner

https://developer.apple.com/documentation/corelocation/responding_to_changes_in_authorization_status

"Receive and respond to changes in your app's authorization status in your delegate's method."

딜리게이트 메소드에서 앱의 권한상태에 대한 변경사항을 받고 응답합니다.

Overview

권한을 요청하거나 앱의 권한 상태가 변경되면 변경사항 처리를 위해 딜리게이트 객체의 locationManager(_:didChangeAuthorization:) 메소드를 사용할 수 있습니다. Listing 1은 앱이 권한을 받은 경우 앱의 위치 관련 기능을 활성화하는 것과, 권한이 어떠한 이유로든 거부되거나 제한될 때 해당 기능을 비활성화하는 딜리게이트 메소드의 구현을 보여주고 있습니다.

Listing 1 Responding to the app's authorization status

func locationManager(_ manager: CLLocationManager, 
                     didChangeAuthorization status: CLAuthorizationStatus) {   switch status {
      case .restricted, .denied:
         // Disable your app's location features
         disableMyLocationBasedFeatures()
         break
            
      case .authorizedWhenInUse:
         // Enable your app's location features.
         enableMyLocationFeatures()
         break
            
      case .authorizedAlways:
         // Enable or prepare your app's location features that can run any time.
         enableMyAlwaysFeatures()
         break
            
      case .notDetermined:
         break
   }
}

Important
위치 서비스의 사용성은 언제든 변경될 수 있습니다. 사용자는 시스템 설정에서 위치 서비스를 비활성화할 수 있으며, 앱 하나에 비활성화할 수 있고 모든 앱에 대해 비활성화할 수도 있습니다. 앱이 실행중일 때 사용성 상태가 변경되면(포어그라운드와 백그라운드 상관없이) 시스템은 변경사항을 올리기 위해 locationManager(_:didChangeAuthorization:) 메소드를 호출합니다.

See Also


Authorization

Choosing the Location Services Authorization to Request

위치 데이터에 접근하기 위해 앱이 필요한 권한을 결정합니다.

https://developer.apple.com/documentation/corelocation/choosing_the_location_services_authorization_to_request
https://velog.io/@panther222128/Choosing-the-Location-Services-Authorization-to-Request

Requesting Authorization for Location Services

사용자 위치에 접근 할 수 있도록 사용자에게 허가를 요청합니다.

https://developer.apple.com/documentation/corelocation/requesting_authorization_for_location_services
https://velog.io/@panther222128/Requesting-Authorization-for-Location-Services


post-custom-banner

0개의 댓글