Mam następujący kod:NSKeyedUnarchiver unarchiveObjectWithData ulega awarii - nie ma sposobu na wychwycenie wyjątku?
@try {
NSSet *set = [NSKeyedUnarchiver unarchiveObjectWithData:mData];
}
@catch (NSException *exception) {
// Use default data
}
W pewnym momencie wydaje się, że nie został prawidłowo archiwizacji i mData
jest uszkodzony. To daje mi następujący błąd:
Terminating app due to uncaught exception 'NSInvalidArgumentException',
reason: '*** -[NSKeyedUnarchiver initForReadingWithData:]:
incomprehensible archive (0x14, 0xffffff9a, 0xffffffd0, 0x1d, 0x9, 0x3d, 0x43, 0x3)'
*** Call stack at first throw:
Jeśli blok try/catch nie działa, jak mam sprawdzić wyjątek tutaj? Czy to nie powinno działać?
Dziękuję.
Czy kiedykolwiek rozwiązałeś ten problem? – PICyourBrain
@ PICyourBrain to było dość długo i nie pamiętam, co zrobiłem, niestety. W tamtym czasie nie miałem jednak testu jednostkowego dla tej części kodu, więc nie jestem pewien, na czym polegał problem. – dimitrios