Skip to content

앱 배포를 위한 준비를 합니다.#272

Merged
Kimyonhae merged 4 commits into
devfrom
chore/271-appstore-refactor
Jun 4, 2026
Merged

앱 배포를 위한 준비를 합니다.#272
Kimyonhae merged 4 commits into
devfrom
chore/271-appstore-refactor

Conversation

@Kimyonhae

@Kimyonhae Kimyonhae commented Jun 4, 2026

Copy link
Copy Markdown
Collaborator

✨ 작업 요약

│ App Store 배포 준비를 위해 지원 기기 제한, 불필요한 권한 제거, 개인정보 보호 매니페스트 추가 및 리소스를 정리했습니다.

📋 구체적인 내용

• 추가/변경된 동작:
• 지원 기기 변경: iPad 스크린샷 업로드 요구를 피하기 위해 앱 빌드 대상을 iPhone 전용( [.iPhone] )으로 축소했습니다.
• 권한 최적화: 더 이상 사용하지 않는 음성 인식 권한 설명( NSSpeechRecognitionUsageDescription )을 Info.plist 설정에서 삭제하여
심사 거절 요인을 방지했습니다.
• 개인정보 보호 매니페스트 추가: UserDefaults API 사용에 따른 Apple의 iOS 17+ 배포 필수 요구사항을 충족하기 위해 UserDefaults
사용 사유( CA92.1 )가 선언된 PrivacyInfo.xcprivacy 파일을 추가했습니다.
• 리소스 정리: icon Composer 연동으로 불필요해진 기존의 AppIcon 에셋 및 appstore.png , playstore.png 이미지 파일을
프로젝트에서 삭제했습니다.
• 영향 받는 화면/모듈:
• Project.swift, Project.swift 등 각 모듈의 Tuist 설정 타겟

──────

🔗 연관 이슈

closed #271
──────

🧩 설계·구현 노트

│ 왜 이렇게 구현했는지, 대안과 비교한 점

• 선택한 방식
• Tuist 4의 타겟 설정인 destinations 를 [.iPhone] 으로 선언하여 Xcode 상에 iPhone만 지원 기기로 빌드되도록 강제했습니다.
• UserDefaults 사용 사유 보고를 위해 PrivacyInfo.xcprivacy 파일을 생성하여 로컬 설정 보관 용도( CA92.1 )로 등록하여 App Store
Connect
제출 차단 문제를 예방했습니다.
• 고려했다가 제외한 방식
• TARGETED_DEVICE_FAMILY 빌드 설정을 강제로 덮어씌우는 방식도 고려했으나, Tuist 4의 구조적 안정성을 위해 destinations 옵션을
수정하여 기기 지원 대상을 정리하는 방식을 택했습니다.

──────

✅ 확인 사항

│ PR 전 직접 확인한 것

[✓] 정상 플로우 동작 확인 ( tuist generate 프로젝트 정상 생성 완료)
[✓] 엣지 케이스 / 빈 값·에러 처리 확인
[ ] (UI 변경 시) 스크린샷 또는 GIF 첨부
[ ] (로직 추가 시) 테스트 추가 여부
──────

👀 리뷰 포인트

[✓] 설계·구조 적절성 (각 모듈별 기기 타겟 설정이 [.iPhone] 으로 통일되었는지 여부)
[✓] 예외/에러 핸들링 (개인정보 매니페스트 누락 대비)

특히 봐줬으면 하는 부분

• PrivacyInfo.xcprivacy 파일에 선언된 UserDefaults 사용 목적(CA92.1) 설정이 적절한지 검토해 주시기 바랍니다.

Kimyonhae added 4 commits June 4, 2026 13:12
- ios -> [iPhone] 변경 함으로서 더 이상 iPad 스크린샷을 요구하지 않습니다.
- 더 이상 Speech를 사용하지 않으므로 제거합니다.
- CA92.1 정책 사유  등록
ChaGok.icon을 사용하여 앱 로고를 설정하므로 기존 appIcon을 제거합니다.
@Kimyonhae Kimyonhae self-assigned this Jun 4, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request restricts the target destinations from .iOS to [.iPhone] across multiple project configurations (App, Core, Data, Domain, and Presentation). Additionally, it removes the NSSpeechRecognitionUsageDescription key from the App target plist, deletes an asset configuration file, and introduces a privacy manifest (PrivacyInfo.xcprivacy) to declare the usage of UserDefaults APIs. I have no feedback to provide as there are no review comments.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

@Kimyonhae Kimyonhae added the Deployment 배포 준비에 해당하는 설정 코드 label Jun 4, 2026
@tuist

tuist Bot commented Jun 4, 2026

Copy link
Copy Markdown

🛠️ Tuist Run Report 🛠️

Builds 🔨

Scheme Status Duration Commit
ChaGok-Workspace 5m 25s 7f4538348

@Kimyonhae Kimyonhae merged commit 2288ef6 into dev Jun 4, 2026
2 checks passed
@Kimyonhae Kimyonhae deleted the chore/271-appstore-refactor branch June 4, 2026 04:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Deployment 배포 준비에 해당하는 설정 코드

Projects

None yet

Development

Successfully merging this pull request may close these issues.

AppStore 준비

1 participant