我試圖製作一個使用設備當前位置的iOS7應用程序。我在我的Mac上使用iPhone模擬器,但我遇到了一些問題。每當我看到位置管理器出現時,即使在設置了自定義位置(從模擬器>調試>位置)後,它也會打印出0.000000的緯度和經度。Mac上的iOS 7模擬器無法使用自定義位置(也不要求權限)
此外,模擬器在打開應用程序時沒有要求使用當前位置的權限似乎很奇怪。有人知道這裏發生了什麼?
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[super viewDidLoad];
CLLocationManager *locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.distanceFilter = kCLDistanceFilterNone; // whenever we move
locationManager.desiredAccuracy = kCLLocationAccuracyHundredMeters; // 100 m
[locationManager startUpdatingLocation];
_location = [locationManager location];
_coord.longitude = _location.coordinate.longitude;
_coord.latitude = _location.coordinate.latitude;
}
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
_coord.longitude = _location.coordinate.longitude;
_coord.latitude = _location.coordinate.latitude;
printf("%f\n",self.coord.longitude);
printf("%f\n",self.coord.latitude);
}
可能重複(http://stackoverflow.com/questions/21102917/is-it-possible-to-get-帶活動當前位置的模擬器) –
默認情況下,模擬器位置設置爲無。因此,您需要進入模擬器菜單Debug - > Location並選擇一個蘋果的位置或選擇您自己的自定義座標。您也可以從Xcode底部的控制檯位置圖標中選擇一個。在那裏你可以選擇像倫敦或莫斯科等着名的ww位置。你也可以在方案中設置你的默認模擬器位置(編輯方案)。 –
您在'viewDidLoad'方法中調用了兩次'[super viewDidLoad]'。 – Gavin