NSKeyedUnarchiver непонятный архив

У меня странный крах, который случается с ячменем, и мне интересно, может ли это быть из-за развращения данных? У меня эта ошибка:

-[NSKeyedUnarchiver initForReadingWithData:]: incomprehensible archive > # Binary Image Name Address Symbol 0 CoreFoundation 0x3357b2a3 __exceptionPreprocess > 1 libobjc.A.dylib 0x3b3df97f objc_exception_throw > 2 CoreFoundation 0x3357b1c5 -[NSException initWithCoder:] > 3 Foundation 0x33e124ef -[NSKeyedUnarchiver initForReadingWithData:] > 4 Foundation 0x33e73537 +[NSKeyedUnarchiver unarchiveObjectWithFile:] 

Мой код в порядке, и это произошло однажды в моем приложении, но мне просто интересно, являются ли поврежденные данные жизнеспособной причиной этого. и если да, то есть способ справиться с поврежденными данными?

Вы можете обернуть часть кода в @try @catch construction, чтобы оценить исключение и избежать сбоя. Вот пример:

 - (UIImage*) loadImageFromCacheWithFilePath: (NSString*) somePath { UIImage* image = nil; @try { image = [NSKeyedUnarchiver unarchiveObjectWithFile:somePath]; } @catch (NSException* exception) { // Surpress any unarchiving exceptions and continue with nil NSLog(@"Load image from cache was failed with exception: %@", [exception reason]); } return image; //This will return nil if exception caught } 

вы все еще испытываете эту проблему? Похоже, вы пытаетесь разобрать json-файл. Попытайтесь разархивировать свои данные с помощью NSJSONSerialization.

Вот небольшой пример кода:

  NSError * serializationError = nil; NSArray *jsonArray = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&serializationError]; if(serializationError == nil && jsonArray != nil) { NSLog(@"%@", jsonArray); } 
  • CSS Гибкая компоновка ящиков на iPad
  • Найдите, предпочитает ли пользователь 12 часов?
  • Как проверить, iPad ли iPad Pro
  • Отключить настройку отображения при отображении клавиатуры в UIModalPresentationFormSheet.
  • gldrawElements - массовое использование процессора в iOS
  • Как установить тело запроса HTTP с помощью AFHTTPRequestOperationManager AFNetwork?
  • Конвертировать xcode 4.6 приложение iPhone в универсальное приложение
  • Если бы вы могли купить две книги по разработке iOS, какие из них вы бы выбрали?
  • скачать образец кода iphone из apple
  • Отображение большого количества данных из Core Data
  • LinkedIn iOS sdk не работает на iPad (os версия 8.0.2)
  • Давайте будем гением компьютера.