2013-06-21 1 views
1

Я попытался написать координату с помощью Core Location, и она работает хорошо, только вещь, это овощ, когда дело доходит до координат.Координатор местоположения, дающий очень плохие координаты

Это код, который получает координаты.

- (void)viewDidLoad 
{ 
[super viewDidLoad]; 

self.locationManager = [[CLLocationManager alloc] init]; 
locationManager.delegate = self; 
locationManager.desiredAccuracy = kCLLocationAccuracyBest; 
[locationManager startUpdatingLocation]; 
} 

- (void)locationManager:(CLLocationManager *)manager 
didUpdateToLocation:(CLLocation *)newLocation 
     fromLocation:(CLLocation *)oldLocation 
{ 
if (startingLocation == nil) 
    self.startingLocation = newLocation; 
NSString *latitudeString = [[NSString alloc] initWithFormat:@"%g",newLocation.coordinate.latitude]; 
latitudeLabel.text = latitudeString; 

NSString *longitudeString = [[NSString alloc] initWithFormat:@"%g",newLocation.coordinate.longitude]; 
longitudeLabel.text = longitudeString; 

NSString *horizontalAccuracyString = [[NSString alloc] initWithFormat:@"%g",newLocation.horizontalAccuracy]; 
horizontalAccuraryLabel.text = horizontalAccuracyString; 

NSString *altitudeString = [[NSString alloc] initWithFormat:@"%g",newLocation.altitude]; 
altitudeLabel.text = altitudeString; 

NSString *verticalAccuracyString = [[NSString alloc] initWithFormat:@"%g",newLocation.verticalAccuracy]; 
verticalAccuracyLabel.text = verticalAccuracyString; 

CLLocationDistance distance = [newLocation getDistanceFrom:startingLocation]; 
NSString *distanceString = [[NSString alloc] initWithFormat:@"%g",distance]; 
distanceTraveledLabel.text = distanceString; 

}

Это Lat дает мне: 37.7858 Long: -122.406, который находится где-то в США, в то время как я бегу код из Европы, Румынии ...

Может быть, потому что он работает от симулятора?

Также я знаю locationManager: didUpdateToLocation: fromLocation осуждается, но я старался делать это с:

- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations 

, но я не знаю, как получить доступ к элементам [месте lastObject].

+0

это может помочь вам http://stackoverflow.com/questions/214416/set-the-location-in-iphone-simulator – mkowal87

ответ

2

Это лат & длинная комбинация - Сан-Франциско, которая является базой для многих поездок на работу (через шикарный роскошный пригородный автобус) сотрудников Apple.

Вы можете установить местоположение, что ваш тренажер работает с довольно легко:

you can set your preferred location in the iPhone simulator

Широта & долготу для Бухареста «44,4325» & «26,103889», насколько я знаю.

Что касается доступа к элементам «[location lastObject]», то объектом (-ами) этого массива будет CLLocation object, который имеет свойство «coordinate». Если вы вызываете вызывающий метод «», этот массив всегда будет иметь по крайней мере одно местоположение (к которому вы обращаетесь через «lastObject»).