fix: 공유하기 링크 404·카드 아이콘 누락 수정 - #41
Open
rrheon wants to merge 1 commit into
Open
Conversation
공유하기에서 두 가지가 깨져 있었다.
1) 링크가 열리지 않음
서버 배틀 상세의 shareUrl 이 무관한 도메인(pique.app)으로 내려오고,
클라 폴백도 복수형 /battles/{id} 라 403 — 이중으로 죽은 링크였다.
실존하는 웹 랜딩은 단수형 /battle/{id} 뿐이다.
PickeShareURL 을 신설해 picke.store(서브도메인 포함) 링크만 신뢰하고,
아니면 단수형 링크를 직접 만들도록 일원화했다.
(서버 shareUrl 도메인 교정은 서버 측 후속 과제)
2) 공유 카드에 아이콘·제목이 빠짐
KFImage 는 ImageRenderer 동기 렌더 시점에 항상 로드 전이라 빈 원으로
캡처된다. RecapView 의 avatarOverride 패턴을 PreVoteView 에 이식해
Kingfisher 로 선로드한 이미지를 주입해 렌더한다.
빠른배틀은 배틀 이미지를 URLSession 으로 받아 첨부하도록 변경.
최종투표(post)는 밝은 제목색이 밝은 스냅샷 배경에 묻혀 보이지 않아
스냅샷에서만 어두운 제목색으로 고정했다.
Stage 빌드로 4개 공유 지점(사전투표·최종투표·빠른배틀·Recap) 실기 확인.
Contributor
|
공유 기능 관련 버그 수정에 대한 PR을 검토했습니다. 새로운 공유 카드 스냅샷 시 아이콘(철학자 이미지) 및 제목이 올바르게 렌더링되지 않던 문제 또한 효과적으로 해결되었습니다. TCA 컨벤션에 따라 비동기 작업( 전반적으로 설계가 견고하고, 모든 변경 사항이 명확하며 코드 품질도 높습니다. 특별히 지적할 만한 문제점은 발견되지 않았습니다. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
요약
공유하기에서 링크가 열리지 않고 공유 카드에 아이콘·제목이 빠지던 문제 수정.
🐛 버그 수정
해결: 공유 링크 생성 PickeShareURL 추가
서버 응답 shareUrl이 picke.store(서브도메인 포함)인지 검증하여 신뢰할 수 있을 때만 사용.
도메인이 다르거나 값이 없으면, 실제 존재하는 단수형 경로(/battle/{id})로 클라이언트가 직접 생성하도록 로직을 추가
(적용: 사전투표·최종투표는 서버값 검증 후 사용, 빠른배틀은 모델에 서버값이 없어 항상 직접 생성)
원인: KFImage 비동기 로딩 특성상, ImageRenderer가 화면을 동기적으로 캡처하는 시점에는 이미지가 로드되지 않아 플레이스홀더만 찍힘.
해결:
사전/최종투표: RecapView에 적용했던 avatarOverride 패턴(QA 픽스 eebbe2d)을 PreVoteView에 적용. Kingfisher로 이미지를 선로드한 뒤 뷰에 주입하여 정상적으로 렌더링되게 수정.
빠른배틀: URLSession으로 배틀 이미지를 먼저 다운로드한 뒤 UIImage 형태로 첨부하도록 처리.
원인: 최종투표(post) 카드의 배경색이 밝은 beige50인데, 텍스트 색상(titleColor)도 동일한 beige50으로 설정되어 글씨가 배경에 묻힘.
해결: 스냅샷 렌더링 시점에만 titleColorOverride: .neutral500 속성을 적용.
테스트 플랜
picke.store/battle/{id}접속, 카드에 아이콘·제목 렌더