2014-10-02 30 views
1

我正在使用iOS SDK7.1。iOS模擬器,CLLocationManager,startUpdatingLocation和locationManager:didUpdateLocations

在我的視圖控制器的viewDidLoad方法中,我創建一個CLLocationManager對象並將它發送給startUpdatingLocation方法。

在iOS模擬器中,我可以更改位置,並調用locationManager:didUpdateLocations。

但是,在CLLocationManager對象接收到startUpdatindgLocation方法後,似乎並未立即調用locationManager:didUpdateLocations。

在爲startUpdatingLocation文檔中CLLocationManger它說: 調用此方法會導致位置管理,以獲得初始定位(這可能需要幾秒鐘),並通過調用它的LocationManager通知您的委託:didUpdateLocations:方法。

基本上,我想在用戶移動之前獲取用戶的位置。

+0

您_really_想要一個物理設備上測試的核心位置,而不是在模擬器。同時要記住,當GPS清晰地看到天空時,它的功能會更好......所以一些測試必須在室外完成,而不是在桌面上完成。非常討厭,但是沒有辦法繞過它。 – 2014-10-02 00:18:44

+0

我認爲如果我在室內並使用iOS模擬器,位置服務可能會使用WiFi來確定位置。 – user3731622 2014-10-02 01:02:00

回答

1

您必須設置:

NSLocationWhenInUseUsageDescription 
NSLocationAlwaysUsageDescription 

在您的info.plist