Могу ли я тестировать существенное изменение с помощью симулятора Xcode?

Интересно, могу ли я протестировать службу определения значимых изменений (метод startMonitoringSignificantLocationChanges) в Xcode Simulator или просто работает только на самом устройстве. Заметьте, я уже пробовал это в Simulator, и это не сработало, но я не уверен, что это только потому, что оно не работает на симуляторе или потому, что я сделал что-то неправильно.

Спасибо

Ответ 1

Я ответил на этот вопрос раньше на SO, и использование симулятора не является точным способом тестирования для -startMonitoringSignificantLocationChanges.

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

Один из вариантов - проверить любую логику, которую вы можете выполнить внутри своих обратных вызовов для -didUpdateToLocation, и вместо этого использовать -startUpdatingLocation. Хотя это большой недостаток для работы от батареи, это позволит вам получать точные обновления местоположения для тестирования. Когда у вас есть все ваши изломы, разработанные в симуляторе, переведите все на важные методы изменения местоположения и протестируйте on-device.

Надеюсь, что это поможет.

Ответ 2

См. Симулятор XCode/iOS: вручную вручную измените местоположение вручную. Вы МОЖЕТЕ имитировать значительные изменения местоположения, но это может занять около 5 минут, прежде чем вы получите обновление, если используете режим отладки местоположения симулятора "freeway drive" .