Swift UserDefault

  • 앞선 글들에서는 Run Time에서의 데이터 저장만 고려했다.
  • 이번 글에서는 데이터를 영구적으로 저장하는 방법에 대해 알아보겠다.
  • 데이터를 저장하는 방법에는 파일 저장, iOS 데이터베이스 Core Data 이용,
  • Network를 통한 서버 데이터베이스 이용 등이 있다.
  • 그 중 이 글에서는 파일 저장 중에서도 Property List,
  • 줄여서 plist를 이용해 데이터를 영구적으로 저장하는 방법을 알아보겠다.

UserDefaults 사용하기

  • UserDefaults를 통해 plist에 데이터를 저장한다.
  • 사용자의 정보를 저장하는 싱글톤 인스턴스이다.
  • 간단한 사용자 정보를 저장 및 불러오는게 가능하고,
  • 내부적으로 plist 파일에 저장되기 때문에 보안상 강력하지는 않다.

UserDefaults 주요 항목

open class var standard: UserDefaults { get }
    
// 데이터 불러오기
open func object(forKey defaultName: String) -> Any?
open func string(forKey defaultName: String) -> String?
open func array(forKey defaultName: String) -> [Any]?
    
// 데이터 저장하기
open func set(_ value: Any?, forKey defaultName: String)
    
// 데이터 지우기 
open func removeObject(forKey defaultName: String)

UserDefaults 예제

// 데이터 저장
UserDefaults.standard.set("macker", forKey: "userID")
    
// 데이터 불러오기
let aUser:String = UserDefaults.standard.object(forKey: "UserID") as! String 
let sUser:String = UserDefaults.standard.string(forKey: "UserID")!

관련 글