4.1 KiB
4.1 KiB
2026-03-13 알림 수신 설정 페이지 개발
완료 기준
- 알림 리스트 우측 상단 이미지(
iv_settings) 터치 시 신규 알림 수신 설정 페이지로 이동한다. - 신규 페이지는 기존 알림 설정 페이지를 대체하지 않고 별도 Activity로 생성된다.
- 페이지는
서비스 알림+팔로잉 채널2개 섹션이며 전체가 하나의 스크롤로 동작한다. 서비스 알림섹션 UI/토글 액션은 기존NotificationSettingsActivity와 동일하게 동작한다.팔로잉 채널섹션 UI는 기존 팔로잉 리스트와 동일하며 무한 스크롤로 20개씩 로드한다.
체크리스트
- 기존 진입/재사용 패턴 분석
- 신규 알림 수신 설정 Activity/ViewModel/Layout 구현
- 서비스 알림 토글 액션 기존 로직과 동일하게 연결
- 팔로잉 채널 리스트(20개 페이징/무한 스크롤) 연결
- 알림 리스트 우측 상단 이미지 진입 연결
- 검증(진단/테스트/빌드) 수행 및 기록
검증 기록
- 2026-03-13
- 무엇/왜/어떻게: 작업 시작 전 요구사항을 완료 기준으로 고정하고 구현 체크리스트를 문서화했다.
- 실행 명령:
glob(pattern="docs/*.md", path="/Users/klaus/Develop/sodalive/Android/SodaLive"),read(filePath="/Users/klaus/Develop/sodalive/Android/SodaLive/docs/20260312_알림리스트구현.md") - 결과: 기존 문서 형식을 확인하고 신규 계획 문서를 생성했다.
- 2026-03-13
- 무엇/왜/어떻게: 알림 리스트 진입점과 재사용 가능한 알림/팔로잉 구현 패턴을 교차 확인해 신규 화면 구성 근거를 확보했다.
- 실행 명령:
background_output(task_id="bg_8f327a73"),background_output(task_id="bg_d549966d"),read(filePath="/Users/klaus/Develop/sodalive/Android/SodaLive/app/src/main/java/kr/co/vividnext/sodalive/home/pushnotification/PushNotificationListActivity.kt"),read(filePath="/Users/klaus/Develop/sodalive/Android/SodaLive/app/src/main/java/kr/co/vividnext/sodalive/settings/notification/NotificationSettingsActivity.kt"),read(filePath="/Users/klaus/Develop/sodalive/Android/SodaLive/app/src/main/java/kr/co/vividnext/sodalive/following/FollowingCreatorActivity.kt") - 결과:
iv_settings클릭 미연결 상태를 확인했고, 토글/팔로잉 리스트 패턴 및 페이징 구조를 신규 화면에 반영했다.
- 2026-03-13
- 무엇/왜/어떻게: 신규 화면/연결 코드의 정적 진단 가능 여부를 확인했다.
- 실행 명령:
lsp_diagnostics(filePath="/Users/klaus/Develop/sodalive/Android/SodaLive/app/src/main/java/kr/co/vividnext/sodalive/settings/notification/NotificationReceiveSettingsActivity.kt"),lsp_diagnostics(filePath="/Users/klaus/Develop/sodalive/Android/SodaLive/app/src/main/java/kr/co/vividnext/sodalive/settings/notification/NotificationReceiveSettingsViewModel.kt"),lsp_diagnostics(filePath="/Users/klaus/Develop/sodalive/Android/SodaLive/app/src/main/res/layout/activity_notification_receive_settings.xml") - 결과: 현 환경은
.kt,.xmlLSP 서버 미구성으로 진단 실행이 불가함을 확인했다.
- 2026-03-13
- 무엇/왜/어떻게: 구현 변경분의 컴파일/테스트/코드스타일 상태를 검증해 배포 전 안정성을 확인했다.
- 실행 명령:
./gradlew :app:assembleDebug :app:testDebugUnitTest :app:ktlintCheck - 결과:
BUILD SUCCESSFUL.
- 2026-03-13
- 무엇/왜/어떻게: 연결된 단말에서 수동 실행 가능성을 점검했다.
- 실행 명령:
adb devices,./gradlew :app:installDebug,adb shell am start -W -n kr.co.vividnext.sodalive.debug/kr.co.vividnext.sodalive.settings.notification.NotificationReceiveSettingsActivity,adb shell run-as kr.co.vividnext.sodalive.debug am start --user 0 -n kr.co.vividnext.sodalive.debug/kr.co.vividnext.sodalive.settings.notification.NotificationReceiveSettingsActivity - 결과: APK 설치는 성공했고, 쉘 직접 실행은 non-exported Activity 정책으로 차단됨을 확인했다. 내부 네비게이션(
PushNotificationListActivity의iv_settings)을 통한 진입은 앱 내 수동 확인이 필요하다.