Запись в список в методе LocationManager - PullRequest
0 голосов
/ 04 июля 2011

Я пытаюсь записать значение широты и долготы в список свойств метода LocationManager.

- (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
       fromLocation:(CLLocation *)oldLocation
{
     NSString *latitude = [[NSString alloc] initWithFormat:@"%g", newLocation.coordinate.latitude];
     NSString *longitude = [[NSString alloc] initWithFormat:@"%g", newLocation.coordinate.longitude];

     NSString *filePath = [[NSBundle mainBundle] pathForResource:
                      @"PlayerData" ofType:@"plist"];

     NSMutableDictionary* plistDict = [[NSMutableDictionary alloc] initWithContentsOfFile:filePath];

     [plistDict setValue:latitude forKey:@"MyLatitude"];
     [plistDict setValue:longitude forKey:@"MyLongitude"];

     [plistDict writeToFile:filePath atomically: YES];

     myLatitude.text = latitude;
     myLongitude.text = longitude;

    NSLog(@"Location: %@", [newLocation description]);

}

По какой-то причине он никогда не записывает значение в список, но выводит значения правильно.

NSLog (@ "Lat i s:% @ Lon is:% @", широта, долгота);

Что может привести к тому, что это не обновится / не запишется в plist?

Спасибо

Ответы [ 2 ]

3 голосов
/ 04 июля 2011

Приложения для iOS находятся в «песочнице», поэтому вы не можете писать в пакет приложений.Вам необходимо написать в один из этих каталогов .Какой из них вам нужно написать, зависит от того, какие это данные.

2 голосов
/ 04 июля 2011

Вы не можете записать в основной пакет (может работать в симуляторе, но не на устройстве).

Попробуйте вместо этого сохранить файл в папку «Документы».

...