2013-05-16 2 views
2

내 앱에서 사용자 위치를 중 하나 인 MKMapKit에 표시하려고합니다. 사용자가이보기 컨트롤러를 선택하면 허용 또는 허용하지 여부를 묻습니다. 사용자가 허용을 선택한 경우 모든 항목이 유효합니다. 허용하지 않는 항목을 선택하면 사용자에게 다시 허용 여부를 묻지 않습니다.사용자 탭이 다음에 허용하지 않을 때 사용자 위치를 표시하는 방법은 무엇입니까?

실제로 원하는 것은 사용자가 내 앱을 처음 사용하는 것을 허용하지 않을 때 다시 허용하도록 선택하거나 다음에 앱을 사용할 때 허용하지 말아야한다는 것입니다. . 어떻게 이것을 할 수 있습니까? 사용자가 선택 시간에 허용을 선택하면 (처음 허용되지 않음) 내 앱에 사용자 위치가 표시됩니다.

일부 S.O 질문에서도 많은 사람들이 앱을 열 때마다 경고를 허용하거나 허용하지 않도록 사용자를 승진시킬 것을 제안했습니다.하지만 처음으로 앱을 사용하는 사람에게 묻습니다.

아이디어를 공유하십시오. 고맙습니다.

답변

1

사용자가 처음으로 앱의 위치 서비스를 사용 중지 한 경우 위치를 알아 내려 할 때마다 애플리케이션에서 알 수 있습니다. 사용자가 자신의 위치를 ​​읽을 수있는 권한을 부여 받았는지 여부를 확인할 수 있습니다. 그렇지 않은 경우 다시 앱에 위치 서비스를 사용 설정하라는 메시지가 표시됩니다. 애플의 문서에서 인용

은 (found here)

당신이 항상 하나 에게 표준 또는 상당한 변화 위치 서비스를 시작하기 전에 CLLocationManager의 locationServicesEnabled 클래스 메소드를 호출하는 것이 좋습니다. (iOS 3.x 및 이전에는 locationServicesEnabled 속성 값을 확인하십시오.)이 클래스 메서드가 YES를 반환하면 서비스를 계획대로 시작할 수 있습니다. NO를 반환하고 위치 서비스를 시작하려고하면 위치 서비스를 다시 사용할지 여부를 확인하라는 메시지가 사용자에게 표시됩니다. 위치가 의도적으로 사용 중지 될 가능성이 높으므로 사용자는 이 프롬프트를 환영하지 않을 수 있습니다.

+0

답장을 보내 주셔서 감사합니다. 비록 내가 CLLocationManager의 locationServiceEnabled 메소드를 사용하여 사용자 위치를 얻었습니까? 내보기 (예 : 둥근 블루 아이콘)에 표시 할 수 있습니까? 그리고 한 가지는 locationServiceEnabled 지금은 사용되지 않습니다. – NSUserDefault

+0

이렇게하면 사용자가 위치 서비스를 다시 사용할지 묻는 메시지를 표시 할 수 있습니까? 답변을 얻을 수있는 방법에 대해 자세하게 설명해주십시오 (일부 코드 일 수 있음)? – NSUserDefault

+0

locationServicesEnabled는 더 이상 사용되지 않습니다! (http://developer.apple.com/library/ios/#documentation/CoreLocation/Reference/CLLocationManager_Class/CLLocationManager/CLLocationManager.html#//apple_ref/occ/clm/CLLocationManager/locationServicesEnabled) 시작하면 설명서를 참조하십시오. 위치 서비스가 NO를 반환하더라도 사용자가 다시 활성화 할 것인지 묻는 메시지가 표시됩니다. – lostInTransit