Я написал приложение, которое использует основные данные, и оно отлично работает как на симуляторе, так и на устройствах. Затем я создал новую ветку git проекта и отлично работает на симуляторе, но не на устройствах.Основные данные fetchedresultscontroller возвращает пустые только на устройстве
Вот код fetchedResultsController
-(NSFetchedResultsController *)fetchedResultsController{
if (_fetchedResultsController != nil) {
NSLog(@"Fetched Controler : %@", _fetchedResultsController);
return _fetchedResultsController;
}
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Membership" inManagedObjectContext:managedObjectContext];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"userdata.email == %@", [[NSUserDefaults standardUserDefaults] stringForKey:@"email"]];
NSSortDescriptor *sort1 = [[NSSortDescriptor alloc]initWithKey:@"type" ascending:NO];
NSSortDescriptor *sort2 = [[NSSortDescriptor alloc]initWithKey:@"membership_name" ascending:YES];
NSArray *sortDescriptors = [[NSArray alloc]initWithObjects:sort1,sort2, nil];
[fetchRequest setEntity:entity];
[fetchRequest setPredicate:predicate];
[fetchRequest setSortDescriptors:sortDescriptors];
_fetchedResultsController = [[NSFetchedResultsController alloc]initWithFetchRequest:fetchRequest managedObjectContext:managedObjectContext sectionNameKeyPath:@"type" cacheName:nil];
return _fetchedResultsController;
}
Тогда Принести объекты в поле зрения будут появляться.
-(void)viewWillAppear:(BOOL)animated{
NSError *error;
[[self fetchedResultsController]performFetch:&error];
[self.tableView reloadData];
}
managed object context
передается от appDelegate
к просмотру входа, то из LoginView на второй взгляд. На втором месте, где возникают проблемы
Единственное, что я могу придумать, это то, что что-то происходит с ограничениями памяти на устройстве или, может быть, проблемой параллелизма?
Если есть какие-либо темы, созданные, я не хотел этого делать.
Вы можете проверить, есть ли второй вид в другом потоке: NSLog (@ "% @", [NSThread currentThread]); – user523234
вы установили адрес электронной почты в настройках по умолчанию? –
Спасибо, пользователю523234 это не помогло в этом случае, но это было частью моего вопроса, и я обязательно буду использовать это в будущем. – whitehead1415