본문 바로가기
Updates.

AndroidX DataStore 1.1.1부터 1.1.7까지의 주요 변경 사항 총정리 (버전별 비교)

by h4r3 2025. 6. 26.
반응형

 

Android 앱 개발에서 SharedPreferences의 대체제로 사용되는 Jetpack DataStore는 지속적인 업데이트를 통해 안정성과 성능을 개선해왔습니다. 이번 글에서는 DataStore 1.1.1 → 1.1.7까지의 변경 사항을 버전별로 정리하고, 이전 버전과 비교해 어떤 점이 달라졌는지, 어떤 상황에서 업그레이드를 고려해야 하는지를 설명합니다.


DataStore란?

DataStore는 Jetpack에서 제공하는 비동기식 데이터 저장 솔루션입니다.

  • SharedPreferences보다 안정적이며,
  • Flow 기반으로 데이터 변경을 옵저빙할 수 있고,
  • Preference DataStore와 Proto DataStore 두 가지 타입을 지원합니다.

AndroidX DataStore 1.1.1 → 1.1.7 변경 요약

버전  

버전  릴리즈 날짜 주요 변경 사항
1.1.1 (미공개, 2024년 말 추정) 옵저버 없을 시 update 무시 (성능 향상)
1.1.2 2025년 4월 24일 멀티프로세스 안정성 개선
1.1.3 ~ 1.1.5 2025년 상반기 내부 버그 수정 및 빌드 호환성 개선
1.1.6 2025년 6월 13일 Gradle 빌드 환경 안정성 향상
1.1.7 2025년 6월 20일 Proguard 설정 누락 문제 해결

📌 DataStore 1.1.1 업데이트 내용

변경 사항 요약

  • 옵저버가 없으면 Flow 데이터 변경 감지 생략
  • 성능 최적화를 위한 내부 개선

장점

  • 불필요한 연산 최소화 → 앱 성능 향상
  • Flow 처리 비용 감소

주의점

  • 기존 테스트 코드에서 expecting emissions 관련 실패 발생 가능

예시 코드

val Context.dataStore by preferencesDataStore(name = "settings")

val countFlow: Flow<Int> = context.dataStore.data
    .map { it[intPreferencesKey("count")] ?: 0 }

📌 DataStore 1.1.2 업데이트 (2025년 4월 24일)

핵심 개선

  • 멀티프로세스 환경에서의 동시성 문제 해결
  • Android 14 이상의 프로세스 분리 구조에 맞게 개선

기대 효과

  • 크래시 위험 감소
  • 데이터 동기화 정확도 향상

📌 DataStore 1.1.3 ~ 1.1.5 (마이너 업데이트)

주된 변경 사항

  • 지속적인 내부 버그 수정
  • Kotlin/Gradle 최신 환경 대응
  • ProtoDataStore 오류 처리 개선

개발자에게 미치는 영향

  • 기능 추가는 없지만, 안정성 개선으로 인해 중장기적으로 중요

📌 DataStore 1.1.6 (2025년 6월 13일 릴리즈)

주요 개선점

  • 빌드 안정성 강화 (AGP 8.7+, Kotlin 2.1.0 대응)
  • Proguard, R8, AGP 관련 경고 제거

정리

  • 최신 Android 개발 환경 대응을 위한 필수 업데이트

✅ DataStore 1.1.7 (2025년 6월 20일 릴리즈)

핵심 변경 내용

  • datastore-preferences-core에 Proguard 룰이 누락되어 있던 문제 해결
  • 릴리즈 빌드에서 ClassNotFoundException, NoSuchMethodException 등의 예외 방지

추천 대상

  • Proguard 혹은 R8을 사용하는 모든 프로젝트
  • 난독화 빌드에서 안정성 확보 필요할 경우

예시 Proguard 추가 불필요

# 더 이상 수동으로 추가할 필요 없음
-keep class androidx.datastore.** { *; }

📌 버전별 비교 요약 테이블

버전 변경 사항 요약  추천 상황
1.1.1 옵저버 최적화 성능 개선 필요 시
1.1.2 동시성 문제 개선 멀티프로세스 환경 앱
1.1.3~5 안정성 및 버그 패치 전체 프로젝트 대상
1.1.6 AGP / Kotlin 최신 대응 최신 개발 환경 필수
1.1.7 Proguard 대응 강화 릴리즈 빌드 오류 방지 필요 시

🔚 마무리: DataStore 버전업이 필요한 시점은?

DataStore는 내부적으로 안정성을 크게 개선하면서도, 외부 API는 대부분 호환을 유지하고 있어 업그레이드에 대한 부담이 적습니다.

  • 1.1.1 → 1.1.2 이상으로 꼭 올릴 것: 테스트 및 다중 프로세스 안정화
  • Proguard 사용 시 1.1.7 권장: 릴리즈 빌드 시 오류 방지
  • Kotlin 2.1.0 / AGP 8.7+ 환경 대응: 1.1.6 이상 필수

🔗 참고 링크


 

반응형