티스토리 뷰
반응형
Retrofit에서 값을 받아온 뒤, data class에 처리를 하는데 data class의 값을 SharedPreference에 저장할 수 없을까 하다가 찾게되었다.
GsonBuilder로 Json 값을 data class에서 가져와 저장하면 된다.
// User data class
data class User(val name: String = "", val gender: String = "")
class PreferenceManager(context : Context) {
private val pref = PreferenceManager.getDefaultSharedPreferences(context)
// Json에서 data class 값으로 변환
fun getUserInfo(key: String) : User = GsonBuilder().create().fromJson(pref.getString(key, null), User::class.java)
// Json으로 변환한 후에 저장
fun setUserInfo(key : String, user : User) = pref.edit().putString(key, GsonBuilder().create().toJson(user, User::class.java)).commit()
}
반응형
'알려주는 이야기 > 안드로이드' 카테고리의 다른 글
안드로이드 구글 지도 사용하기 - 1 [구글 지도 띄우기] (0) | 2020.06.06 |
---|---|
코틀린 DataBinding 예제 (0) | 2020.05.04 |
안드로이드 STT, TTS 예제 (0) | 2020.05.02 |
안드로이드 4대 컴포넌트 (0) | 2020.01.20 |
간단한 Toast 메시지 배우기 (0) | 2019.08.13 |
댓글