У меня есть NSMutableArray и NSString. Я хочу архивировать их, а также хочу получить массив и строку без изменений в массиве и строке.Сбой при использовании NSKeyedArchiver
Я дал, как это,
для архива,
NSMutableData *data = [[NSMutableData alloc]init];
NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
[archiver encodeObject:arrayRandomNumberForUser forKey:@"array"];
[archiver encodeObject:stringBingo forKey:@"string"];
[archiver finishEncoding];
для разархивировать,
NSData *data=match.matchData;
NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data];
mutableArray = [unarchiver decodeObjectForKey:@"array"];
stringtakenValue = [unarchiver decodeObjectForKey:@"string"];
[unarchiver finishDecoding];
Где, match.matchData является объектом NSData получения от GAMECENTER метода поворота тейк ,
При вызове метода turnMethod он разбился. Вот сообщение об ошибке окна консоли.
Согласующего приложение из-за неперехваченное исключение 'NSInvalidArgumentException', причина: ' - [NSXPCEncoder encodeObject: forKey:]: Этот кодер только кодирует объекты, которые принимают NSSecureCoding (объект класса ''. NSKeyedArchiver)'