Я перенес свой проект в Swift 3 и NSKeyedArchiver
не работает. У меня на самом деле есть ошибка времени выполнения при попытке декодирования объекта следующим образом:
let startDayTime = aDecoder.decodeObject(forKey: Key.startDayTime) as! Int
Он отлично работал в Swift 2.2 в Xcode 7.3. Кто-нибудь еще сталкивался с такими проблемами?
P.S. У меня есть эта ошибка как для Simulator, так и для устройства.
UPDATE: я решил эту проблему, используя decodeInteger(forKey key: String)
вместо decodeObject(forKey key: String)
. По какой-то причине AnyObject не бросает Integer в Swift 3, хотя это произошло в Swift 2.2