2015-01-11 6 views
0

신속한 앱에서 버튼을 누르면 CoreLocation을 켜고 끕니다. 앱이로드 될 때이 방법을 켜는 방법입니다.Swift를 사용하여 CoreLocation 토글

let locationManager = CLLocationManager() 
locationManager.requestWhenInUseAuthorization() 

if CLLocationManager.locationServicesEnabled() { 
    locationManager.delegate = self 
    locationManager.desiredAccuracy = kCLLocationAccuracyBest 
    locationManager.startUpdatingLocation() 
} 

위대한 작품입니다. 사용자에게 메시지를 표시 한 다음지도에서 내 위치를 업데이트합니다. 그러나 요청할 때 "아니요"를 선택하면 다시 켜기를 원합니다. 나는 이것이 승인을 다시 요청하는 것만 큼 쉽지만 작동하지 않을 것이라고 생각했습니다. 위치를 켜기 위해 버튼을 눌렀을 때 호출되는 메소드가 있습니다.

이 방법의 코드는 기본적으로 완전히 동일합니다. 처음에 승인 상태가 설정 되었으면해야 할 일이 있습니까? 당신이 요청할 때 "아니오"를 선택한다면

답변

1

, 난 당신이 마술 부정 할 수없는, 다음에 다시 사용자가 사용자 인증을 거부하도록 선택하면

을 켤 수 있도록하려면 사용자, 그리고 (아) 당신은 수 없습니다 시스템의 인증 대화 상자가 다시 나타납니다.

당신이 권한을주는 설정으로 이동 스위치를 플립 사용자를 구걸 (즉, 경보) 자신의 대화를 투입 할 수있는 최선. 사용자를 설정 (iOS 8의 새로운 기능)으로 설정할 수 있습니다. 하지만 시스템 인증 대화 상자를 다시 열 수는 없습니다.

+0

정말 고마워! 이것은 내가 듣고 싶어했던 바로 그 것이다. – leerob