У меня есть приложение, которое хранит данные с помощью NSKeyedArchiver
, и все работает нормально.NSKeyedArchiver меняется с объектаForKey на intForKey
В первой версии приложения значение X хранилось как строка, но теперь я изменил его, чтобы его сохранить и сохранить как int. Проблема в том, что если кто-то обновляется со старой версии до самой новой, приложение вылетает из-за того, что intForKey:
вызывается на ключ, содержащий строку.
Есть ли какой-то способ во время декодирования, чтобы проверить, является ли то, что декодируется, int
или объект?
ли вы на самом деле вызова 'intForKey:' 'или decodeIntegerForKey:' метод? Можете ли вы опубликовать фрагмент кода, показывающий, как вы это делаете? –
К сожалению, я имел в виду int x = [aDecoder decodeIntForKey: @ "value"]; – halfblood17