#ios #gps #mkmapview #altitude
#iOS #gps #mkmapview #высота
Вопрос:
У меня проблема с получением высоты, она возвращает 0.0000. Вот мой код:
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
NSString *tAltitude = [NSString stringWithFormat:@"%f", [newLocation altitude]];
CLLocationCoordinate2D coord=newLocation.coordinate;
MKCoordinateSpan span = {.latitudeDelta = 0.005, .longitudeDelta = 0.005};
MKCoordinateRegion region = {coord, span};
[map setRegion:region];
NSLog(@"Location: %@", [newLocation description]);
NSLog(@"altitudine:%@",tAltitude); }
Комментарии:
1. Вы запускаете это на симуляторе или на реальном устройстве?
2. Реальное устройство. И желаемая точность установлена на kCLLocationAccuracyBest, поэтому я не знаю, в чем проблема.
3. Проблема в том, что я был внутри. Когда я вышел и протестировал, это сработало.
Ответ №1:
Если вы находитесь в помещении, iPhone использует вышку сотовой связи или местоположение Wi-Fi. Это местоположение не вернет высоту. Вы должны протестировать outdoor, чтобы получить GPS.
Чтобы убедиться, что вы используете GPS, проверьте также точность по горизонтали. Если значение находится в диапазоне 2 цифр, вы должны быть на GPS, и, скорее всего, вы получите показания высоты