Я использую iOS SDK7.1.iOS Simulator, CLLocationManager, startUpdatingLocation и locationManager: didUpdateLocations
На мой взгляд, метод viewDidLoad контроллера. Я создаю объект CLLocationManager и отправляю ему метод startUpdatingLocation.
В симуляторе iOS я могу изменить местоположение, и вызывается диспетчер location: didUpdateLocations.
Однако, похоже, что locationManager: didUpdateLocations вызывается сразу же после того, как объект CLLocationManager получает метод startUpdatindgLocation.
В документации startUpdatingLocation в CLLocationManger он говорит: Вызов этого метода приводит к тому, менеджеру местоположения для получения исходного исправления местоположения (который может занять несколько секунд) и уведомить ваш делегат по телефону его locationManager: didUpdateLocations: метод.
В принципе, я хочу получить местоположение пользователя до того, как пользователь переместится.
Вы _really_ хотите испытывать ядра расположение на физическом устройстве, а не в симуляторе. Также имейте в виду, что функции GPS лучше, когда у них есть четкое представление о небе ... так что некоторые испытания придется проводить не на вашем столе, а на другом месте. Очень раздражает, но вокруг этого нет. –
Я думал, что службы определения местоположения могут использовать WiFi для определения местоположения, если я был в помещении и с помощью симулятора iOS. – user3731622