SharedPreference와 DataStore

ansehun·2022년 12월 13일
0

정의

  • SharedPreference는 자동 로그인과 같은 기능을 실행하기 위해서 작은 데이터를 가볍게 저장할 수 있는 방식이다.
  • XML에 Key-Value 형식으로 저장함.

SharedPreference의 한계점

  • Type-Safety(객체를 직접 직렬화하지 않고도 저장할 수 있다는 뜻)가 보장되지 않기 때문에 매번 형 변환을 해줘야함.
  • 메인 스레드에서 호출 할 수 있게 설계된 API 지만 UI 스레드를 블로킹해 ANR 발생 가능
  • Strong consistency가 보장되지 않기 때문에 다중 스레드 환경에서 안전하지 못함.

DataStore

  • Coroutine, Flow를 사용하여 비동기 처리를 할 수 있는 API
  • 다중 스레드 환경에서 Strong Consistency(다중 스레드 환경에서 동일한 데이터가 추출될 수 있도록 함)를 보장
  • Proto DataStore에 한해 Type Safety 보장

0개의 댓글