Подтвердить что ты не робот

CLLocationManager на iPhone симулятор терпит неудачу с kCLErrorDomain Code = 0

CLLocationManager на iPhone Simulator предполагается подделать Купертино (не так ли?), но это НЕ, он не работает с kCLErrorDomain Code=0. Делегат LocationManager получает сообщение didFailWithError. Этот метод реализован для регистрации ошибки, и консоль выводит следующее:

Error Domain=kCLErrorDomain Code=0 "The operation couldn’t be completed. (kCLErrorDomain error 0.)"

Я работал над реальным проектом, когда я столкнулся с этой проблемой, но бессмысленно обсуждать мой код, потому что я загрузил образец кода "Locations" (обновленный 2010-06-22 для iOS 4) из центра dev и проблемы сохранялось.

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

Я добавил одну (тривиальную) строку для реализации didFailWithError для регистрации ошибок, если таковые имеются. Я получаю ошибку, описанную выше.

С Xcode 3.2.2 и таргетингом 3.1.3 я могу получить фиксированное местоположение (Cupertino) при запуске старой версии проекта "Locations".

Может ли кто-нибудь помочь?

Спасибо.

4b9b3361

Ответ 1

CLLocationManager начал работать как ожидалось снова на iOS Simulator 5.0.

По моему опыту, он использовался с ошибкой kCLErrorDomain Code=0 в iOS Simulator 4.0 через 4.3. Включение в аэропорт и подключение к Wi-Fi, как это было предложено другими ответами, в моем случае не помогло. Тем не менее, я хотел бы поблагодарить всех за их ответы. Я просто обошел эту проблему, протестировав весь код ядра на устройстве.

Недавно я обновился до XCode 4.2 (от XCode 3.2.6) и iOS Simulator 5.0, который поставляется вместе с ним, и в результате я заметил, что CLLocationManager снова начал работать как ожидалось. При выборе старшего симулятора в XCode 4.2 он продолжает терпеть неудачу; что указывает на то, что имитатор считается виновным.

Ответ 2

Эта ошибка также возникает, если у вас есть схема Scheme/Edit Scheme/Options/Allow Location Simulation, но у вас нет установленного по умолчанию местоположения.

Пожалуйста, проверьте это, чтобы решить вашу проблему.

Ответ 3

Следующие шаги исправили мою проблему:

  • В меню Simulator: Reset Content and Settings....
  • Закройте симулятор
  • Перезагрузите приложение.

Ответ 4

Я столкнулся с такой же ситуацией и последовал этим шагам, может быть, это помогает:)

1) Перейдите к Simulator (в зависимости от версии)

2) Перейдите в меню "Отладка" → "Расположение" → Выберите "Apple" в качестве пользовательского местоположение и др.

он начал работать в моем случае.

Ответ 5

Я слышал это reported before, но никогда не видел его до тех пор, пока только сейчас. Я отключил аэропорт на своем MacBook, так как я использовал ethernet. Я включил аэропорт и перезапустил симулятор, и теперь он работает.

Для вашего симулятора вам нужен Wi-Fi (аэропорт), чтобы симулятор сообщал о позиции с Xcode 3.2.3.

Ответ 6

Эта ошибка также возникает, если у вас установлен Scheme/Edit Scheme/Options/Allow Location Simulation, но у вас нет установленного по умолчанию местоположения.

Ответ 7

Он сделал то же самое со мной:

Сначала он показал местоположение, затем я установил бета-версию XCode 4.2, а затем, когда я вернулся к 4.1, местоположение больше не показывалось, а CLLocationManager выбрасывало ошибку местоположения.

Я сделал следующее, и проблема была исправлена ​​(я не знаю, требуются ли оба действия или только один будет достаточным, потому что теперь он работает и не может воспроизвести):

Запустите симулятор, а затем:

  • отключите сетевой кабель
  • измените устройство в симуляторе на iPhone (сетчатка): Оборудование > Устройство > iPhone (Retina)

Я сделал это по ошибке, и он зафиксировал местоположение на моем iMac.

Ответ 8

Аэропорт должен быть включен, и вы должны присоединиться к сети. По крайней мере, это был мой опыт. Когда я только включил его, я все равно получил ту же ошибку. Присоединился к беспроводной сети, и ошибка исчезла.

Ответ 9

Я продолжал получать сообщение об ошибке, пока не включил свой аэропорт и не подключился к Wi-Fi-сети (не уверен, что я даже должен быть на этом!)... и CLLocationManager работал после неудачной последовательности на протяжении веков. Это огромная ошибка симулятора или что?!

Apple - ПОЖАЛУЙСТА, исправьте это!: P

Ответ 10

В Xcode 7 Simulator:

Оборудование > Перезагрузка

(Мягче чем Reset Содержание и настройки ")

Ответ 11

Я, как правило, подключен к Ethernet, выполняя тестирование Simulator - у меня этот провал. Включил WIFI, но не использовал его для данных (не подключался ни к чему) - теперь все работает.

Итак, решение было - просто включите WIFI (я также ушел и перезапустил Simulator, не уверен, если понадобится).

Lion и Xcode 4.2

Ответ 12

Это все еще происходит в iOS 5.0.1 при следующих условиях:

  • Запустить симулятор в ситуации без соединения wi-fi
  • Подключение к Wi-Fi сети
  • [Результат] CLLocationManager завершился с ошибкой, описанной в этом вопросе.
  • [Fix] Перезапустить симулятор

Ответ 13

Сначала перейдите в панель журналов Xcode и установите "Не моделировать местоположение". Затем выберите меню симуляторa > debug > location > set custom или выберите любой.