MSG-606 fix: iOS 모션 권한 문구 + 필맵 앱 아이콘 적용, 빌드 번호 3 — ITMS-90683 반려·템플릿 아이콘 대응 - #167
Conversation
첫 업로드(1.0.0 (1))가 App Store Connect 처리에서 반려됐다: NSMotionUsageDescription 누락. MSG-606에서 expo-location의 motionUsagePermission:false로 키를 뺐지만, 앱이 모션을 안 써도 SDK가 CoreMotion API를 참조해 문구가 필수다. 수집하지 않는다는 문구를 넣고 buildNumber 2로 재업로드. 런북 7절에 기록. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
Claude finished @Ss0Mae's task in 1m 25s —— View job ✅ 코드 리뷰 완료작업 목록
요약: ITMS-90683(모션 권한 문구 누락) 반려 대응 — |
|
React Doctor found no new issues. 🎉 Reviewed by React Doctor for commit |
| locationAlwaysAndWhenInUsePermission: false, | ||
| motionUsagePermission: false, | ||
| motionUsagePermission: | ||
| "걸음·이동 감지에는 쓰지 않아요. 지도 라이브러리가 요구하는 항목으로, 필맵은 모션 데이터를 수집하지 않아요.", |
There was a problem hiding this comment.
🟡 권장 — 바로 위 L189-191의 MSG-606 H1 주석("Always·모션 키는 넣지 않는다")이 이 변경으로 모순됩니다. ITMS-90683 반려로 모션 키는 빼는 대신 정직한 문구로 채워야 한다는 게 새 결론이니, 주석도 같이 갱신하면 다음에 이 파일을 읽는 사람이 헷갈리지 않습니다.
예시:
// MSG-606 H1: 위치 권한 문구 — 플러그인 기본값("Allow $(PRODUCT_NAME) to access your location")은
// 목적이 없어 심사 반려 1순위. 앱은 포그라운드 위치만 쓴다(`shared/geolocation.ts`) — Always 키는
// 넣지 않는다. 모션 키는 애초에 빼려 했으나 SDK가 CoreMotion을 참조해 ITMS-90683으로 반려됐다 —
// 정직한 문구로 채워야 한다(motionUsagePermission, MOBILE_RUNBOOK.md 7절 참고).
🔍 코드 리뷰 요약 (PR #167)범위: 잘한 점
지적 사항🟡 권장 — 기타
View job run |
…번들 제거 ios.icon이 템플릿의 assets/expo.icon(Expo 심볼 셰브런)을 가리켜 App Store Connect 빌드 2의 아이콘이 필맵이 아니었다. 키를 지워 최상위 icon(assets/images/icon.png, 1024·불투명)이 iOS에도 쓰이게 하고 번들을 삭제한다. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
Claude finished @Ss0Mae's task in 3m 8s —— View job ✅ 코드 리뷰 완료작업 목록
요약: ITMS-90683 모션 권한 문구 대응(빌드 2)에 더해, iOS 아이콘이 Expo 템플릿 셰브런으로 나갔던 것을 필맵 아이콘으로 고친 커밋(빌드 3)까지 리뷰했습니다. 아이콘 수정은 원인 분석·수정 모두 정확하고(직접 1024×1024 불투명 확인), 다른 참조도 안전하게 정리됐습니다. 🟡 인라인 코멘트 1건 —
Branch: |
| locationAlwaysAndWhenInUsePermission: false, | ||
| motionUsagePermission: false, | ||
| motionUsagePermission: | ||
| "걸음·이동 감지에는 쓰지 않아요. 지도 라이브러리가 요구하는 항목으로, 필맵은 모션 데이터를 수집하지 않아요.", |
There was a problem hiding this comment.
🟡 권장 (이전 리뷰에서 이미 지적, 이번 푸시에도 미반영) — 바로 위 L188-190의 MSG-606 H1 주석("Always·모션 키는 넣지 않는다")이 이 줄에서 motionUsagePermission에 실제 문구를 채운 것과 여전히 모순됩니다. ITMS-90683 반려로 "모션 키는 아예 안 넣는다"는 정책이 "정직한 문구로 채운다"로 바뀌었으니, 주석도 같이 갱신하는 것을 권장합니다. 그대로 두면 다음에 이 파일을 보는 사람이 주석만 믿고 다시 false로 되돌릴 위험이 있습니다.
예시:
// MSG-606 H1: 위치 권한 문구 — 플러그인 기본값("Allow $(PRODUCT_NAME) to access your location")은
// 목적이 없어 심사 반려 1순위. 앱은 포그라운드 위치만 쓴다(`shared/geolocation.ts`) — Always 키는
// 넣지 않는다. 모션 키는 애초에 빼려 했으나 SDK가 CoreMotion을 참조해 ITMS-90683으로 반려됐다 —
// 정직한 문구로 채워야 한다(motionUsagePermission, MOBILE_RUNBOOK.md 7절 참고).
🔍 코드 리뷰 요약 (PR #167, 최신 커밋
|
개요
첫 업로드 1.0.0 (1)이 App Store Connect 처리에서 반려됐습니다(메일 "Action needed: … has one or more issues", ITMS-90683 Missing purpose string — NSMotionUsageDescription).
원인
MSG-606에서
expo-location옵션motionUsagePermission: false로 키를 뺐지만, 앱이 모션을 안 써도 SDK가 CoreMotion API를 참조해 Apple이 문구를 요구합니다.변경
app.config.js—ios.icon(Expo 템플릿assets/expo.icon, 셰브런) 제거 → 최상위icon(필맵 격자 심볼 1024·불투명)이 iOS에도 적용. 번들 삭제.buildNumber3app.config.js—motionUsagePermission에 정직한 문구("…필맵은 모션 데이터를 수집하지 않아요"),ios.buildNumber1 → 2docs/MOBILE_RUNBOOK.md7절 — 처리 반려 메일과 이 사례 기록검증
NSMotionUsageDescription존재,CFBundleVersion2🤖 Generated with Claude Code