🐾
UserDefaults操作を楽にするライブラリ
はじめに
UserDefaultsの管理ってめんどくさいですよね。
特にこのあたり↓↓
- キーの管理
- 初期値の設定
これらを楽にするライブラリを紹介します。
ライブラリ
SwiftyUserDefaultsというライブラリを使うと楽にできます。
導入
(READMEのコピペなので、バージョンは更新されている可能性があります。)
CocoaPods
pod 'SwiftyUserDefaults', '~> 5.0'
SPM
let package = Package(
name: "MyPackage",
products: [...],
dependencies: [
.package(url: "https://github.com/sunshinejr/SwiftyUserDefaults.git", .upToNextMajor(from: "5.0.0"))
],
targets: [...]
)
Carthage
github "sunshinejr/SwiftyUserDefaults" ~> 5.0
使い方
1. キーの定義
extension DefaultsKeys {
// 初期値を設定しない場合
var username: DefaultsKey<String?> { .init("username") }
// 初期値を設定する場合
var launchCount: DefaultsKey<Int> { .init("launchCount", defaultValue: 0) }
}
2. 取得
let username: String? = Defaults[\.username]
let launchCount: Int = Defaults[\.launchCount]
3. 更新
Defaults[\.username] = "new username"
4. 便利メソッド
全消し
Defaults.removeAll()
注意
Defaults[]でアクセスするにはimport SwiftyUserDefaults
する必要があります。
複数箇所にimport SwiftyUserDefaults
があると、脱SwiftyUserDefaultsをするとなったときに地獄になりますw
UserDefaultsを操作するクラスを用意して、そこに閉じ込めた方がいいですねー。
最後に
最後まで読んでいただきありがとうございました!
Discussion