Может получить координаты с симулятора iPhone, но не может получить координаты с устройства iPhone - PullRequest
0 голосов
/ 03 мая 2010

Я столкнулся с чем-то таинственным (для меня). У меня есть код, чтобы выбрать текущее местоположение пользователя на iPhone SDK. Он отлично работает на симуляторе iPhone, но когда я пытаюсь запустить его на реальном устройстве, я получаю странную ошибку.

Вот код (я использую ASIFormDataRequest для создания запроса POST):

ASIFormDataRequest * request = [ASIFormDataRequest requestWithURL:url];
[request setPostValue:@"testauthor" forKey:@"author"];
[request setPostValue:[[NSNumber numberWithDouble:datum.location.coordinate.latitude] stringValue] forKey:@"latitude"];
NSLog(@"%f", datum.location.coordinate.latitude);
NSLog(@"%f", datum.location.coordinate.longitude);
[request setPostValue:[[NSNumber numberWithDouble:datum.location.coordinate.longitude] stringValue] forKey:@"longitude"];
[request setPostValue:datum.comment forKey:@"comment"];

На симуляторе NSLog регистрирует широту и долготу, а на iPhone - нет.

Даже странно, когда я прохожу с отладчиком на устройстве, я пытаюсь "po datum.location", я получаю

<+###, -###> +/- 223.10m (speed 0.00 mps / course -1.00) @ 2010-05-02 22:18:37 -0400

(### заменяется моим местоположением), но когда я делаю "(gdb) po datum.location.coordinate", я получаю:

There is no member named coordinate.

Ребята, вы понимаете, почему это может произойти? Заранее спасибо за помощь!

1 Ответ

1 голос
/ 03 мая 2010

Поскольку po печатает объект, а CLLocationCoordinate2D не является объектом, это структура.

...