iOS 애플리케이션 개발 중에는 디바이스 고유 토큰을 유지 및 저장하는 경우가 많습니다. 이 토큰은 푸시 알림 등과 같은 서비스에서 사용되며, 애플리케이션이 재설치되거나 업데이트되어도 동일한 토큰을 유지해야 합니다. 이를 위해 Swift에서는 키체인(Keychain)을 사용하여 토큰을 안전하게 저장할 수 있습니다.
1. KeychainWrapper 라이브러리 설치
KeychainWrapper는 iOS에서 키체인을 쉽게 사용할 수 있도록 도와주는 라이브러리입니다. Cocoapods를 사용하고 있다면 Podfile
에 다음과 같이 추가합니다.
pod 'SwiftKeychainWrapper'
그리고 터미널에서 pod install
을 실행하여 라이브러리를 설치합니다.
2. 토큰 저장하기
다음은 디바이스 고유 토큰을 키체인에 저장하는 예제 코드입니다.
import SwiftKeychainWrapper
let deviceToken: String = "ABCDEF1234567890"
let keychain = KeychainWrapper.standard
keychain.set(deviceToken, forKey: "deviceToken")
KeychainWrapper.standard
을 사용하여 키체인 인스턴스를 생성하고, set(_:forKey:)
메서드를 사용하여 토큰을 저장합니다. "deviceToken"
은 토큰에 대한 고유한 식별자이므로, 다른 키를 사용할 수도 있습니다.
3. 저장된 토큰 불러오기
다음은 키체인에 저장된 토큰을 불러오는 예제 코드입니다.
import SwiftKeychainWrapper
let keychain = KeychainWrapper.standard
if let deviceToken = keychain.string(forKey: "deviceToken") {
print("디바이스 고유 토큰: \(deviceToken)")
} else {
print("토큰이 저장되어 있지 않습니다.")
}
string(forKey:)
메서드를 사용하여 "deviceToken"
키로 저장된 값을 가져올 수 있습니다. 값이 존재하는 경우에는 값을 출력하고, 값이 존재하지 않는 경우에는 메시지를 출력합니다.
4. 토큰 삭제하기
토큰을 삭제해야하는 경우에는 다음과 같이 코드를 작성할 수 있습니다.
import SwiftKeychainWrapper
let keychain = KeychainWrapper.standard
keychain.removeObject(forKey: "deviceToken")
removeObject(forKey:)
메서드를 사용하여 "deviceToken"
키로 저장된 값을 삭제할 수 있습니다.
이렇게 Swift에서 Keychain을 사용하여 디바이스 고유 토큰을 안전하고 일관적으로 저장하고 불러올 수 있습니다.