23 lines
1.9 KiB
Markdown
23 lines
1.9 KiB
Markdown
# 종료 라이브 상대시간 국제화 적용
|
|
|
|
- [x] `GetLatestFinishedLiveResponse`의 `dateUtc`를 기준으로 상대시간 계산 방식 정의 확인
|
|
- [x] `LatestFinishedLiveAdapter`에서 UTC -> 기기 타임존 기준 상대시간 계산 로직 적용
|
|
- [x] `방금 전 / OO분 전 / OO시간 전 / OO일 전` 문자열 국제화 리소스 적용
|
|
- [x] 변경 파일 진단 및 테스트/빌드 검증 수행
|
|
|
|
## 검증 기록
|
|
|
|
### 2026-03-05
|
|
- 무엇을: `LatestFinishedLiveAdapter`에서 `item.timeAgo` 직접 노출 대신 `dateUtc`를 UTC로 파싱한 후 기기 타임존 기준 현재 시각과 비교해 `방금 전 / 분 전 / 시간 전 / 일 전` 형태로 표시하도록 변경.
|
|
- 왜: 서버 문자열 의존을 줄이고, 기기 로컬 타임존 기준의 일관된 상대시간 표기 및 다국어 리소스 기반 UI를 적용하기 위해.
|
|
- 어떻게:
|
|
- `app/src/main/java/kr/co/vividnext/sodalive/live/LatestFinishedLiveAdapter.kt`에 UTC 파싱(`parseDateUtcToMillis`)과 상대시간 계산(`relativeTimeText`) 추가.
|
|
- `app/src/main/res/values/strings.xml`, `app/src/main/res/values-en/strings.xml`, `app/src/main/res/values-ja/strings.xml`에 `latest_finished_live_time_*` 문자열 추가.
|
|
- LSP 진단 시도: `.kt`, `.xml` 확장자용 LSP 서버 미구성으로 자동 진단 불가 확인.
|
|
- 실행 명령: `./gradlew :app:testDebugUnitTest :app:assembleDebug`
|
|
- 결과: `BUILD SUCCESSFUL` (단위 테스트 및 디버그 빌드 성공, 기존 경고만 존재)
|
|
- 실행 명령: `./gradlew :app:lintDebug`
|
|
- 결과: `:app:lintDebug FAILED` (기존 이슈로 판단되는 `AndroidManifest.xml`의 `com.facebook.FacebookActivity` MissingClass 포함, 총 16 errors/573 warnings)
|
|
- 재검증 명령: `./gradlew :app:testDebugUnitTest :app:assembleDebug`
|
|
- 재검증 결과: `BUILD SUCCESSFUL` (어댑터 파싱 패턴 보강 후에도 테스트/빌드 정상)
|