Я делаю приложение, которое использует Core Data Framework, но оно работает только в симуляторе iPhone.Я знаю настоящий мотив: файл основных данных сохраняется в каталоге iPhone Simulator.Я хочу изменить это, я беру архив типа sqlite и помещаю в Xcode (файлы поддержки), и я хочу загрузить данные, которые в нем содержатся.Как мне это сделать?
Мой код:
#pragma core data methods
-(NSManagedObjectModel *)managedObjectModel
{
if(managedObjectModel!=nil)
{
return managedObjectModel;
}
NSURL *modelURL = [[NSBundle mainBundle]URLForResource:@"iGyn" withExtension:@"momd"];
managedObjectModel = [[NSManagedObjectModel alloc]initWithContentsOfURL:modelURL];
return managedObjectModel;
}
-(NSPersistentStoreCoordinator *)persistentStoreCoordinator
{
if(persistentStoreCoordinator!=nil)
{
return persistentStoreCoordinator;
}
NSURL *storeURL = [[self applicationDocumentsDirectory]URLByAppendingPathComponent:@"iGyn.sqlite"];
NSError *error = nil;
persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc]initWithManagedObjectModel:[self managedObjectModel]];
if(![persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:nil error:&error])
{
NSLog(@"error...");
}
return persistentStoreCoordinator;
}
-(NSManagedObjectContext *)managedObjectContext
{
if(managedObjectContext!=nil)
{
return managedObjectContext;
}
NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator];
if(coordinator!=nil)
{
managedObjectContext = [[NSManagedObjectContext alloc]init];
[managedObjectContext setPersistentStoreCoordinator:coordinator];
}
return managedObjectContext;
}
-(NSURL *)applicationDocumentsDirectory
{
return [[[NSFileManager defaultManager]URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask]lastObject];
}
-(void)saveContext
{
NSError *error = nil;
NSManagedObjectContext *moc = self.managedObjectContext;
if(moc!=nil)
{
if([moc hasChanges] && ![moc save:&error])
{
NSLog(@"error...");
}
}
}
Что я должен изменить на основные данные, чтобы работать на моем устройстве?У меня уже есть данные, сохраненные в моем файле sqlite.