1.8 KiB
1.8 KiB
- FCM 푸시 생성 경로에서 딥링크 파라미터 추가 위치 확정
server.env기반 URI scheme(voiceon://,voiceon-test://) 분기 로직 구현deep_link_value매핑 규칙(live,channel,content,series,audition,community) 반영- FCM payload에 최종 딥링크 문자열(
{URISCHEME}://{deep_link_value}/{ID}) 주입 - 관련 테스트/검증 수행 후 결과 기록
검증 기록
1차 구현
- 무엇을: FCM 이벤트에 딥링크 메타(
deepLinkValue,deepLinkId)를 추가하고,FcmService에서deep_linkpayload({URISCHEME}://{deep_link_value}/{ID})를 생성하도록 구현했다. - 왜: 푸시 수신 시 앱이 직접 딥링크로 진입하도록 서버에서 일관된 규칙으로 URL을 포함하기 위해서다.
- 어떻게:
./gradlew test실행(성공)./gradlew build실행(초기 실패: import 정렬 ktlint 위반)./gradlew ktlintFormat실행(성공)./gradlew test && ./gradlew build재실행(성공)- LSP 진단은 Kotlin LSP 미구성 환경으로 실행 불가(Gradle 컴파일/테스트/ktlint로 대체 검증)
2차 수정
- 무엇을: 오디션 푸시의
deepLinkId를-1대체값이 아닌 실제audition.idnullable 값으로 조정했다. - 왜: ID가 null일 때 비정상 딥링크(
/audition/-1)가 생성되는 가능성을 제거하기 위해서다. - 어떻게:
./gradlew test && ./gradlew build실행(성공)
3차 수정
- 무엇을:
server.env값 해석 기준을voiceon(프로덕션),voiceon_test및 그 외(개발/기타)로 조정했다. - 왜: 실제 운영 환경 변수 규칙과 딥링크 URI scheme 선택 조건을 일치시키기 위해서다.
- 어떻게:
./gradlew test && ./gradlew build실행(성공)