Прежде всего, позвольте мне сказать, что это НЕ жалоба, я просто хочу понять, как работает метод register(defaults: [])
.
Я использую метод UserDefaults register(defaults: [])
внутри didFinishLaunchingWithOptions
метод для регистрации значения по умолчанию всех моих ключей UseDefault, все работает нормально, как и ожидалось.
Мой вопрос: почему значения в методе register(defaults: [])
не сбрасываются каждый раз, когда didFinishLaunchingWithOptions
метод называется?
Я не хочу, чтобы они отдыхали. Я просто пытаюсь понять, почему.
У меня есть следующий код ...
func application(...didFinishLaunchingWithOptions...) -> Bool {
UserDefaults.standard.register(defaults: [
keyUserName:"",
keyHasCar:false
])
}
Вот почему я запутался, когда приложение запускается, оно сохраняет значения по умолчанию, как и ожидалось, а затем, если значения изменяются позже где-то в приложении и сразу после того, как приложение убито и перезапущено, didFinishLaunchingWithOptions
вызывается снова, нозначения не сбрасываются, но если я добавлю новый ключ в массив, он сохранится, но остальные ключи не будут сброшены, будет добавлен только новый ключ со значением по умолчанию.
Опять же,Я не хочу ценитьЧтобы сбросить, мне просто нужно понять, как работает метод register
.