Имитация изменений местоположения для `startMonitoringSignificantLocationChanges`

Я пишу приложение для iPhone и использую службы определения местоположения. Я использую метод startMonitoringSignificantLocationChanges в CLLocationManager . (Насколько я понимаю, это для служб определения местоположения с низким энергопотреблением и низкой точностью.) Когда я создаю и запускаю свое приложение в iOS Simulator, оно отлично определяет мое местоположение. Однако я хочу смоделировать обновления местоположения, выходящие за рамки первоначального исправления.

Я заметил эти две опции:

  • iOS Simulator: Debug> Location menu
  • Xcode 4: Product> Debug> Simulate Location menu

Оба они приемлемо работают для имитации начального исправления. (Например, , выберите «Apple» из первого или «Москва» из второго.) Однако последующие изменения любого из них НЕ будут запускать другое обновление местоположения в смоделированном приложении.

Я хочу, чтобы я получал уведомление, когда смоделированный местоположение изменяется при использовании startMonitoringSignificantLocationChanges . (iOS Симулятор действительно генерирует серию обновлений, когда я использую вместо него startUpdatingLocation .) Это упрощает тестирование приложений с поддержкой определения местоположения, не вынося устройство в поле.

Два вопроса:

  • В чем разница между этими двумя?
  • Как использовать Симулятор iOS и / или Xcode 4 для имитации серии изменений местоположения?

Ура.

26
задан ocarlsen 17 December 2011 в 20:13
поделиться

1 ответ

Чтобы ответить на вопрос @ Nevan-king, почему нет обновлений при использовании startMonitoringSignificantLocationChanges

См. Примечание Apple для func startMonitoringSignificantLocationChanges()

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

0
ответ дан 28 November 2019 в 07:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: