반응형
Kotpref
설명
- SharedPreferences 기능을 좀더 확장해서 사용할 수 있게 해주는 라이브러리
- gson-support를 사용하면 기본 타입 뿐만 아니라 list, map, 객체 등을 저장할 수 있다
코드
build.gradledependencies {
...
implementation 'com.chibatching.kotpref:kotpref:2.13.1'
implementation 'com.chibatching.kotpref:gson-support:2.13.1'
}
Settings
object Settings : KotprefModel() {
var userName: String by stringPref("Unknown")
var list: ArrayList<String> by gsonPref(arrayListOf("1", "2"))
var map: HashMap<String, String> by gsonPref(hashMapOf("a" to "AAA", "b" to "BBB"))
}
AppApplication
class AppApplication : Application() {
override fun onCreate() {
super.onCreate()
Kotpref.init(this) // 초기화 필수
}
}
MainActivity
class MainActivity : AppCompatActivity() {
lateinit var binding: ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityMainBinding.inflate(layoutInflater).apply {
setContentView(root)
lifecycleOwner = this@MainActivity
}
}
fun onClickSave(view: View) {
Settings.userName = "tom"
Settings.map["c"] = "CCC"
Settings.list.add("3")
}
fun onClickShow(view: View) {
val message = "${Settings.userName}, ${Settings.list}, ${Settings.map}"
Toast.makeText(this, message, Toast.LENGTH_SHORT).show()
}
}
참고
반응형
'Development > Android' 카테고리의 다른 글
[Android] BuildConfig (0) | 2021.02.09 |
---|---|
[Android] meta-data (0) | 2021.02.09 |
[Android] SharedPreferences (0) | 2021.02.09 |
[Android] Build APK (0) | 2021.02.09 |
[Android] Retrofit (0) | 2021.02.09 |