iPhone Objective-C: убедитесь, что пользователь разрешает совместное использование местоположения перед выполнением других действий - PullRequest
0 голосов
/ 26 июля 2010

Мое приложение запрашивает местоположение на экране входа в систему, и прямо сейчас пользователь может войти в систему, не сообщая свое местоположение. Когда пользователь выбирает «Нет» для совместного использования местоположения, выдается ошибка, которая читает Error Domain=kCLErrorDomainCode=1 "The operation couldn't be completed. (kCLErrorDomain error 1.)". Я предполагаю, что это потому, что я пытаюсь получить доступ к широте и долготе, не имея таких вещей.

Мой вопрос: как мне убедиться, что пользователь разрешает местоположение, прежде чем что-либо еще может быть сделано? Есть ли способ создать новый всплывающий запрос «Разрешить расположение»?

Заранее спасибо!

Ответы [ 2 ]

2 голосов
/ 26 июля 2010

Вам нужно будет реализовать locationManager:didFailWithError.

В документации указано, что:

Если пользователь отрицает ваше приложение использование службы определения местоположения, это метод сообщает kCLErrorDenied ошибка. Получив такую ​​ошибку, Вы должны остановить службу определения местоположения.

Дополнительная информация здесь

0 голосов
/ 26 июля 2010

Мое предложение состояло бы в том, чтобы ваше приложение справилось с ситуацией, когда информация о местоположении недоступна, сообщив пользователю, что это требование и т. Д.

Повторение диалогового окна до тех пор, пока вы не получите нужный ответ, будет просто раздражать пользователя.

...