사용자 도구

사이트 도구


android:datastore
datastore

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판이전 판
android:datastore [2025/04/27 20:19] 이거니맨android:datastore [2025/04/27 21:03] (현재) 이거니맨
줄 66: 줄 66:
 </file>  </file> 
  
 +==== 2. 인스턴스 생성하기 ====
 +
 +"appPreferences"란 이름의 Datastore 인스턴스를 다음과 같이 생성한다. Datastore는 한 앱당 하나의 인스턴스만 싱글톤으로 사용되어야 하므로 호출에 있어서는 굳이 이름이 필요 없을 것이다. 다만, 유지보수 관점에서 기존의 Datastore와는 다른 새로운 Datastore 인스턴스를 만들어야 할 필요도 있을 것이므로 이름은 필요할 것이다. 
 +
 +<code kotlin>
 +    private val Context.dataStore : DataStore<Preferences> by preferencesDataStore(name = "appPreferences")
 +</code>
 +
 +==== 3. 키값의 제목 설정하기 ==== 
 +
 +Datastore는 [키, 밸류]의 쌍으로 데이터를 저장한다. 이를테면 C#의 Dictionary와 매우 비슷한 구조인 것이다. 
 +
 +즉, 각 키별로 형식이 존재한다. 이를테면 int값을 저장할 때에는 intPreferencesKey라고 하고, boolean값을 저장할 때에는 booleanPreferencesKey라고 한다. 
 +
 +우리는 boolean값을 "FILTER_ON" 이란 이름으로 저장할 것이다. 따라서 다음과 같이 키를 정의하게 된다. 
 +
 +<code kotlin>
 +    private val FILTER_ON = booleanPreferencesKey("FilterOn") // string 저장 키값
 +</code>
  
 ===== 싱글턴으로 만들기 =====  ===== 싱글턴으로 만들기 ===== 
android/datastore.txt · 마지막으로 수정됨: 2025/04/27 21:03 저자 이거니맨