У меня есть ошибка в iOS 8, которая замерзает мое приложение для iPhone. Во время загрузки данных из бэкэнд с помощью RestKit я не знаю, почему код в методе getObjectsAtPath не выполняется. Я предполагаю, что должен быть возвращен код из блока успеха или отказа этого метода. Похоже, что остальная часть пытается получить данные из бэкэнда, так как я вижу, что индикатор активности сетевой активности по-прежнему активен. Я не знаю, как я мог бы изучить проблему, потому что Xcode не возвращает никаких ошибок. Приложение все еще работает, но я не могу нажать кнопку «Назад», чтобы перейти к родительскому виду.Restkit замораживается
-(void)loadAlerts{
_credentials = [[EFCredentials alloc]init];
NSString *rememberToken = [_credentials authToken];
if ([EFReachabilityManager isReachable]) {
[[[RKObjectManager sharedManager]HTTPClient]setDefaultHeader:@"Authorize" value:rememberToken];
RKResponseDescriptor *responseDescriptor =
[RKResponseDescriptor responseDescriptorWithMapping:[EFMappingProvider alertsMapping]
method:RKRequestMethodGET
pathPattern:[NSString stringWithFormat:@"/%@/alerts.json",_id]
keyPath:nil statusCodes:RKStatusCodeIndexSetForClass(RKStatusCodeClassSuccessful)];
[[RKObjectManager sharedManager]addResponseDescriptor:responseDescriptor];
[[RKObjectManager sharedManager] getObjectsAtPath:[NSString stringWithFormat:@"/wearers/%@/alerts.json",_wearer_id] parameters:nil
success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult){
NSLog(@"%@",mappingResult.array);
[self.tableView reloadData];
}
failure:^(RKObjectRequestOperation *operation, NSError *error) {
UIAlertView *alertView =
[[UIAlertView alloc] initWithTitle:@"Error" message:[error localizedDescription] delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alertView show];
}
];
}
else{
_alertViewReachability = [[UIAlertView alloc]initWithTitle:@"Error" message:@"No network connection " delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Try again", nil];
[_alertViewReachability show];
}
}
libsystem_kernel.dylib`semaphore_wait_trap: 0x196954eb0: movn х16, # 35
0x196954eb4: SVC# 128
0x196954eb8: RET
И кнопка работает, если вы не назовете RestKit? – Wain
Да, кнопка работает без комплекта отдыха, только простая кнопка «назад». Я уже тестировал приложение на iOS 7, и тот же код работает без каких-либо проблем. – sonoDamiano
И вызывается 'getObjectsAtPath', но ни один из обратных вызовов не вызван? Включите ведение журнала трассировки и используйте профилировщик, чтобы узнать, что делает приложение во время «блокировки». – Wain