🖇 SharedPreference 객체 생성하기
val sharedPreference = getSharedPreferences(name, mode)
1. name parameter
- 앱 내에는 여러 SharedPreference 객체가 있을 수 있고, 그 객체들을 구분해주는 식별자로 사용된다.
2. mode parameter
- MODE_PRIVATE : 생성한 application에서만 사용 가능
- MODE_WORLD_READABLE : 다른 application에서 읽기만 가능
- MODE_WORLD_WRITABLE : 다른 application에서 쓰기도 가능
- MODE_APPEND : 기존 perference에 신규로 추가
🖇 SharedPreference 객체에 데이터 저장하기
editor를 사용해야 한다.
그리고 실제로 객체 내에 데이터를 저장하려면 꼭 commit()을 호출해야 한다.editor.putString(key, value) // Key-Value 방식
//SharedPreference 만들기
val sharedPreference = getSharedPreferences("sp1", Context.MODE_PRIVATE)
//SharedPreference에 데이터 넣기
// 1. SharedPreference로부터 editor 얻어오기
val editor : SharedPreferences.Editor = sharedPreference.edit()
editor.putString("hello", "안녕하세요") // Key-Value 방식
editor.putString("goodbye", "안녕히가세요")
editor.commit() // 데이터 넣기
🖇 SharedPreference 객체 불러와서 데이터 읽기
val value = sharedPreference.getString(key, defaultValue)
defaultValue parameter
- 만약 해당 key에 해당하는 데이터가 없는 경우 기본값으로 넘겨줄 값 지정
// sharedPreference에서 값을 불러오는 방법
val sharedPreference = getSharedPreferences("sp1", Context.MODE_PRIVATE)
val value1 = sharedPreference.getString("hello", "데이터 없음1")
val value2 = sharedPreference.getString("goodbye", "데이터 없음2")
Log.d("key-value", "Value1 : " + value1)
Log.d("key-value", "Value2 : " + value2)
🖇 특정한 key에 대한 데이터만 삭제하고 싶을 때
editor.remove(key)
val sharedPreference = getSharedPreferences("sp1", Context.MODE_PRIVATE)
val editor = sharedPreference.edit()
editor.remove("hello") // key가 "hello"인 데이터 삭제
editor.commit() // editor는 commit해주는거 잊지 말자
🖇 SharedPreference에 저장한 모든 데이터를 삭제하고 싶을 때
editor.clear()
val sharedPreference = getSharedPreferences("sp1", Context.MODE_PRIVATE)
val editor = sharedPreference.edit()
editor.clear() // "sp1"에 저장된 모든 데이터 저장
editor.commit()