Широта Долгота IOS 4.3 - PullRequest
       2

Широта Долгота IOS 4.3

0 голосов
/ 07 января 2012

Я следую учебнику http://www.switchonthecode.com/tutorials/getting-your-location-in-an-iphone-application, но я не могу получить широту и долготу в моем Xcode SDK.

- (void)viewDidLoad {
 [super viewDidLoad];
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
[locationManager startUpdatingLocation];

}


- (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
       fromLocation:(CLLocation *)oldLocation
{

int degrees = newLocation.coordinate.latitude;
double decimal = fabs(newLocation.coordinate.latitude - degrees);
int minutes = decimal * 60;
double seconds = decimal * 3600 - minutes * 60;
NSString *lat = [NSString stringWithFormat:@"%d° %d' %1.4f\"", 
                 degrees, minutes, seconds];
//latLabel.text = lat;
degrees = newLocation.coordinate.longitude;
decimal = fabs(newLocation.coordinate.longitude - degrees);
minutes = decimal * 60;
seconds = decimal * 3600 - minutes * 60;
NSString *longt = [NSString stringWithFormat:@"%d° %d' %1.4f\"", 
                   degrees, minutes, seconds];  
NSLog(@"%@ %@",longt, lat);

}

Это не показывает мне широту идолгота в консоли.Помогите мне, пожалуйста.

1 Ответ

0 голосов
/ 08 января 2012

Ваш код выглядит нормально. Если это не работает - проблема не здесь.

Убедитесь:

  1. Вы запускаете его на устройстве (не эмуляторе)
  2. На вашем устройстве установлена ​​и подключена SIM-карта к сотовой сети
  3. Очень хорошая идея подключить устройство к WiFi с доступом в Интернет.

Все это поможет GPS быстрее определять положение с помощью вспомогательного GPS.

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

Кроме того, рекомендуется реализовать locationManager: didFailWithError: метод для обнаружения возможных ошибок. Вроде отключен GPS.

Вот пример для этого метода:

- (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error
{
NSLog(@"GPS Error: %@", [error localizedDescription]);
}

Определение местоположения GPS может занять несколько минут для 3G и ранних версий, и около 10 секунд для 4 и 4S (при условии ясного неба в обоих случаях)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...