개발 공부 기록/04. Android

[Android][Kotlin] SharedPreferences 이용하여 자동로그인 구현하기

박세류 2020. 12. 1. 14:06

SharedPreferences는 (key, value) 쌍으로 저장되며, 간단한 데이터 저장을 목적으로 제공된다.

내부저장소를 사용하기 때문에 권한 설정이 필요 없고 코드가 간단하다는 특징이 있다.

또한 데이터가 XML 형식으로 저장되기 때문에 앱이 종료되도 남아있다.

 

 

● 값을 저장할 때  

 

 1. SharedPreference, Editor 생성하기 

val shared = getSharedPreferences("Pref", Context.MODE_PRIVATE)
val editor = shared.edit()

getSharedPreferences(이름, 모드) 이며 모드는 현재 보안상  MODE_PRIVATE만 사용한다.

editor는 SharedPreferences에서 데이터를 저장하기 위해 사용하는 인터페이스로써, edit() 호출하여 사용한다.

 

2. 데이터 저장후, apply()로 반영해주기

editor.putString("키", "값")
editor.apply()

putString(), putInt() 등으로 값을 저장할 수 있고, apply()메소드를 반드시 호출해야만 실제 파일에 반영된다.

commit()도 있지만, 비동기 처리를 지원하는 apply()를 더 추천하는 바이다.

 

 

● 값을 가져올 때  

val shared = getSharedPreferences("Pref", Context.MODE_PRIVATE)
val ID = pref.getString("ID", "");

두번째 매개변수는 defaultValue이며 key값이 null일경우 반환할 디폴트 값이다.

 

● 값을 지울 때

editor.remove(key) // 해당 키의 데이터를 삭제
editor.clear() // SharedPreferences의 모든 데이터 삭제

 

이것을 이용하여 로컬에서 손쉽게 자동로그인 기능을 구현할 수 있다.

728x90