[swift] SwiftyUserDefaults를 사용하여 사용자의 로그인 상태를 저장하고 불러오는 예제는 어떤 것들이 있나요?

먼저, SwiftyUserDefaults를 설치하고 사용하기 위해서는 CocoaPods를 사용해야 합니다. 프로젝트 루트 디렉토리에서 Podfile을 만들고 다음 내용을 추가합니다:

platform :ios, '10.0'

target 'YourApp' do
    use_frameworks!
    pod 'SwiftyUserDefaults'
end

터미널에서 pod install을 실행하여 SwiftyUserDefaults를 설치합니다.

그런 다음, 다음과 같이 사용자의 로그인 상태를 저장하고 불러오는 예제 코드를 작성할 수 있습니다:

import UIKit
import SwiftyUserDefaults

class LoginViewController: UIViewController {
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        // 로그인 상태를 확인하여 이전에 로그인한 경험이 있다면 자동으로 로그인 처리
        if Defaults[.isLoggedIn] {
            performSegue(withIdentifier: "LoggedInSegue", sender: nil)
        }
    }
    
    @IBAction func loginButtonTapped(_ sender: UIButton) {
        // 로그인 성공 시 사용자의 로그인 상태를 저장하고 화면 전환
        Defaults[.isLoggedIn] = true
        performSegue(withIdentifier: "LoggedInSegue", sender: nil)
    }
}

extension DefaultsKeys {
    var isLoggedIn: DefaultsKey<Bool> { .init("isLoggedIn", defaultValue: false) }
}

위의 코드에서는 Defaults[.isLoggedIn]와 같이 SwiftyUserDefaults를 사용하여 사용자의 로그인 상태를 저장하고 불러옵니다. DefaultsKeys 확장을 통해 .isLoggedIn 키를 정의하고, 이를 Defaults 객체의 Key-Value 쌍으로 사용하여 값을 저장하고 불러옵니다.

위 예제는 간단한 로그인 기능을 구현한 예제입니다. 사용자가 로그인 버튼을 탭하면 isLoggedIn 값을 true로 설정하고, 이후 다른 화면으로 전환합니다. 홈 화면 등에서 사용자의 로그인 상태를 확인하여 자동으로 로그인 처리할 수 있도록 합니다.

이와 같이 SwiftyUserDefaults를 사용하면 사용자의 로그인 상태와 같은 간단한 설정을 쉽게 관리할 수 있습니다.