[kotlin] 코틀린 확장 함수를 사용하여 로컬 저장소를 관리하는 방법은?
다음은 코틀린에서 SharedPreferences를 사용하여 확장 함수를 정의하는 간단한 예제입니다.
먼저, SharedPreferences를 다루는 확장 함수를 작성합니다.
import android.content.Context
fun Context.getPreferences() = this.getSharedPreferences("my_preferences", Context.MODE_PRIVATE)
fun Context.saveString(key: String, value: String) {
val editor = this.getPreferences().edit()
editor.putString(key, value)
editor.apply()
}
fun Context.getString(key: String, defaultValue: String): String {
return this.getPreferences().getString(key, defaultValue) ?: defaultValue
}
이제 위에서 정의한 확장 함수를 사용하여 로컬 문자열 값을 저장하고 검색할 수 있습니다.
// 값을 저장
context.saveString("username", "john_doe")
// 값을 검색
val username = context.getString("username", "guest")
위의 예제에서는 Context
를 확장하여 SharedPreferences를 보다 쉽게 다룰 수 있는 saveString
및 getString
확장 함수를 작성했습니다. 이러한 방식으로 로컬 저장소를 다루는 코드를 보다 간단하게 만들 수 있습니다.
참고 문헌:
- https://kotlinlang.org/docs/extensions.html