재설치 후 통계 복원·자동 수령 깜빡임 해소·접근성 음성 안내 추가
목차
v1.0.3 릴리즈 정리
이번 릴리즈는 세 갈래로 나뉨. 통계 동기화, 자동 수령 흐름 개선, 접근성 알림. 하나씩 정리.
서버 통계 동기화
- 그동안 로컬 카운터만 보고 화면에 그렸음. 디바이스 재설치하면 숫자가 0 으로 리셋되는 게 거슬렸음
- 이번엔 진입 시점에 서버에서 누적치를 한 번 받아오고, 이벤트 발생할 때마다 증분만 보내는 구조로 바꿈
| 항목 | 이전 | 변경 후 |
|---|---|---|
| 저장소 | 로컬 캐시만 | 서버 누적 + 로컬 캐시 |
| 재설치 시 | 0 리셋 | 마지막 누적치 복원 |
| 네트워크 호출 | 없음 | 진입 1회 + 증분 |
suspend fun syncStats(): Result<Stats> {
val remote = api.fetchStats()
cache.update(remote)
return Result.success(remote)
}
서버에서 받아오는 건 한 번뿐이고 이후엔 증분만 올리니 트래픽 부담도 거의 없음. 재설치 후 첫 진입 화면에 누적치가 그대로 떠 있는 걸 처음 보고 잠깐 만족감 들었음.
자동 수령 UI 개선
- 자동 수령은 사용자가 깨우지 않아도 백그라운드에서 도는 흐름. 그동안 토글 상태가 화면 진입할 때마다 깜빡거리는 문제가 있었음
- 상태를 스트림으로 묶고, 화면이 다시 그려질 때 마지막 값을 즉시 보여주도록 수정. 초기값을 미리 박아둔 게 핵심이었음
- 자동 수령 사용 중일 때 상단에 작은 인디케이터 표시. "지금 동작 중" 이라는 신호. 사용자가 "꺼진 줄 알고 다시 켰다" 같은 문의 보내던 게 이거 때문이었던 듯함
접근성 알림 추가
- 시각 장애가 있는 사용자가 자동 수령 결과를 놓치는 제보가 있었음. 화면 변화 없이 백그라운드에서 결과만 바뀌니까 알 수 없었던 것
- 스크린 리더로 읽히도록 수령 완료 시점에 announce 호출 추가. 화면 변화가 없어도 음성으로 안내됨
- contentDescription 누락 영역도 일괄로 채움. 그동안 미루던 숙제였는데 이번에 같이 처리
빌드 정리
- 모듈 의존성 정리. 안 쓰는 라이브러리 4개 제거하고 버전 카탈로그로 통합
- 결과적으로 APK 가 1.2MB 줄었음. 작은 차이지만 저사양 단말 사용자 입장에선 의미 있음
릴리즈 후 며칠 모니터링했는데 통계 불일치 리포트는 안 들어왔고, 깜빡임 문의도 잠잠. 접근성 쪽은 유저 한 명이 직접 "고맙다" 라고 메시지 줘서 그게 이번 릴리즈에서 제일 기뻤음.
다음
댓글 0
첫 댓글 달아줘.