[NSKeyedUnarchiver initForReadingWithData:]: данные NULL - программирование
Подтвердить что ты не робот

[NSKeyedUnarchiver initForReadingWithData:]: данные NULL

Среди параметров, которые я сохраняю в NSUserDefaults, является необязательным объектом, который не имеет смысла иметь готовое по умолчанию значение. Пока пользователь не установит значение для этого объекта, приложение генерирует ошибку "[NSKeyedUnarchiver initForReadingWithData:]: data NULL", когда я удаляю файлы из NSUserDefaults. Я игнорирую ошибку, и приложение работает нормально.

Есть ли лучшая практика, чтобы избежать этого, и это волнение?

4b9b3361

Ответ 1

Я не уверен, что вы разориентируете, но если вы сначала посмотрите на ключи, прежде чем вы разберетесь, вы можете сделать это следующим образом:

if ([[[NSUserDefaults standardUserDefaults] dictionaryRepresentation].allKeys containsObject:@"keyForNonMandatoryObject"]) {
        // unarchive the value here
    }