これは私のモデルクラスです
class UserRoot : Mappable {
var success : Bool!
var user : UserDetails!
var error = ""
required init?(map: Map) {
}
func mapping(map: Map) {
success <- map["success"]
user <- map["user"]
error <- map["error"]
}
}
ログインに成功した後、このデータをユーザーのデフォルトに保存して、ユーザーがログイン資格情報を再度提供する必要がないようにします。これが私のコードです
class Default : NSObject{
static func saveToSharedPrefs(user: UserDetails!) {
let d = UserDefaults.standard
if user != nil {
d.set(Mapper().toJSONString(user, prettyPrint: false) , forKey: "USERDETAILS")
} else {
d.set(nil, forKey: "USERDETAILS")
}
d.synchronize()
}
}
モデルクラスがクラスから継承されていることを確認してください。継承されてい
NSObject
ない場合、実行時にクラッシュします。
データを保存するには:
let data = NSKeyedArchiver.archivedData(withRootObject: <Your model class>)
UserDefaults.standard.set(data, forKey: "userDetails")
データを取得して元に戻すには
if let data = UserDefaults.standard.value(forKey: "userDetails") as? Data {
if let dict = NSKeyedUnarchiver.unarchiveObject(with: data) as? <Your model class> {
print(dict)
}
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加