У меня есть NSMutableArray, где хранятся объекты CLLocation из GPS. Проблема заключается в том, что o пытайтесь сохранить мой массив в объекте NSData, чтобы вставить его в базу данных sqlite. Объект NSData имеет значение nil. До недавнего времени мой код работал нормально. Я думаю, что после завершения обновления xcode. Snipset мой код выглядит следующим образом:Передача NSMutableArray в archivedDataWithRootObject return nil
@interface srTrackMeHome : UIViewController<CLLocationManagerDelegate>{
CLLocationManager *locationManager;
NSMutableArray *myLocations;
}
на .m файл на кнопку мыши я запускаю следующую функцию:
- (IBAction)StartTrackMe:(id)sender {
myLocations=[[NSMutableArray alloc]init];
.
.
.
.
.
[locationManager startUpdatingLocation];
}
-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations{
.
.
.
.
[myLocations addObject:newLocation];
}
и когда я закончил собирать мои пункты GPS я попробовать следующее (до этого момента я не могу видеть мой массив, который содержит данные):
NSData *routePointsFromArray = [NSKeyedArchiver archivedDataWithRootObject:myLocations];`
вот где routePointsFromArray = ноль и несколько дней назад это работало.
Я что-то не хватает? Заранее спасибо!
Вы наблюдали за протокалом NSCoding? – aircraft
Опубликовать более релевантный код. На данный момент похоже, что вы никогда не инициализируете 'myLocations'. – rmaddy
@aircraft Я прочитал, что и CLLocations и NSMutablearray соответствуют протоколу nscoding. Поскольку я сказал, что мой код работал и все еще работает на устройствах, у которых есть мое приложение, но мой код не работает после обновления моего xcode. –