Swift: как сохранить пользовательские настройки?
Я все еще очень новичок в разработке iOS и быстро, и я не уверен, что я слишком задумываюсь об этом. В настоящее время я работаю над приложением, которое при открытии требует, чтобы пользователь вводил свои учетные данные. Это становится утомительным и разочаровывающим, потому что каждый раз, когда приложение закрывается и открывается снова, пользователь должен выполнить вход. Есть ли простой способ заставить программу запомнить, если пользователь уже подписал?
Я смотрел в CoreData, но каждый пример включает в себя сохранение нового объекта каждый раз и требует некоторого запроса для извлечения информации. Там, где мне действительно нужно, это bool isLoggedIn и int для сохраненного идентификатора пользователя.
Edit:
NSUserDefaults - именно то, что я искал.
Ответы
Ответ 1
Вы можете использовать NSUserDefaults
для сохранения информации и получения ее в следующий раз при запуске приложения.
https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSUserDefaults_Class/index.html
Например:
NSUserDefaults.standardUserDefaults().setObject("mynameisben", forKey: "username")
let userName = NSUserDefaults.standardUserDefaults().stringForKey("username")
Обновление для Swift 3+
UserDefaults.standard.set("mynameisben", forKey: "username")
let userName = UserDefaults.standard.string(forKey: "username")
Ответ 2
Используйте NSUserDefaults
Let defaults = NSUserDefaults.standardUserDefaults()
defaults.setObject("User", forKey: "userName")
Проверьте, существует ли имя пользователя при запуске приложения в AppDelegate.swift
didFinishLaunchingWithOptions
Если имя пользователя существует, пропустите страницу входа
Чтобы проверить, если NSUserDefaults is nil
if (defaults.objectForKey(userName) != nil) {
// Skip Login
}
else {// Show login
}