Apple App Store 앱 배포
1단계: 사전 준비
Apple Developer Account 가입
Bundle ID 설정
- Xcode에서 Runner 프로젝트 선택
- Signing & Capabilities 탭
- Bundle Identifier 확인 (예: com.example.myapp)
2단계: 인증서 생성
Certificate Signing Request (CSR) 생성
- Mac에서 Keychain Access 열기
- Keychain Access → Certificate Assistant → Request a Certificate from a Certificate Authority
- 이메일, 이름 입력
- 저장 (CSR 파일 생성)
Apple Developer에서 인증서 생성
- Apple Developer 로그인
- Certificates, IDs & Profiles 이동
- Certificates → + 버튼
- iOS App Development 선택
- CSR 파일 업로드
- 인증서 다운로드 (.cer 파일)
Mac에 인증서 설치
다운로드한 .cer 파일을 더블클릭하여 Keychain에 설치
3단계: App ID & 프로비저닝 프로필 설정
App ID 생성
- Certificates, IDs & Profiles → Identifiers → + 버튼
- App IDs 선택
- Bundle ID 입력 (com.example.myapp)
- 필요한 기능 선택 (푸시 알림 등)
- 생성
Provisioning Profile 생성
- Certificates, IDs & Profiles → Profiles → + 버튼
- App Store Connect 선택
- 방금 생성한 App ID 선택
- 인증서 선택
- Device 선택 (App Store는 모든 기기 지원)
- 다운로드
Xcode에 프로비저닝 프로필 설정
- Xcode에서 Signing & Capabilities 탭
- Team 선택
- Provisioning Profile 자동 관리 (자동 선택 권장)
4단계: App Store Connect 설정
앱 생성
- https://appstoreconnect.apple.com 로그인
- My Apps → + 버튼
- New App 선택
- Platform: iOS 선택
- Name, Bundle ID, SKU 입력
- 생성
앱 정보 입력
| 항목 | 설명 |
|---|
| Name | 앱 이름 |
| Subtitle | 부제목 |
| Description | 앱 설명 |
| Keywords | 검색 키워드 |
| Support URL | 지원 페이지 |
| Privacy Policy | 개인정보 정책 |
앱 스크린샷 업로드
- iPhone, iPad 각각 최소 2개 스크린샷 필요
- 권장 해상도: iPhone 6.7" (1284x2778px)
심사용 정보 입력
| 항목 | 설명 |
|---|
| Age Rating | 나이 제한 등급 |
| Contact Info | 심사용 연락처 |
| Demo Account | 테스트 계정 |
| Notes | 심사자 메모 |
5단계: 빌드 및 배포
Release Build 생성
flutter build ios --release
Xcode에서 Archive 생성
- Xcode에서 Product → Archive 선택
- 빌드 완료 대기
- Organizer 창에서 Archives 탭 확인
TestFlight에 업로드 (선택)
- Organizer에서 Distribute App 선택
- App Store Connect 선택
- Upload 선택
- 팀 선택 후 업로드
- 자동 서명 선택
App Store Connect에서 Build 선택
- App Store Connect → My Apps → 앱 선택
- General → App Information 이동
- Build 섹션에서 방금 업로드한 Build 선택
6단계: 심사 제출
심사 정보 최종 확인
- Pricing and Availability: 가격 및 국가 선택
- App Review Information: 심사 정보 확인
- Version Release: 승인 후 자동 출시 또는 수동 출시 선택
Submit for Review
- App Store Connect에서 Submit for Review 버튼 클릭
- 심사 진행 (보통 24~48시간)
7단계: 승인 및 출시
심사 결과 확인
- 승인: App Store에 자동 출시 (또는 수동 출시)
- 거부: 이유 확인 후 수정 후 재제출
앱 출시
- 자동 출시: 승인 즉시 App Store에 표시
- 수동 출시: 승인 후 Release 버튼 클릭
주의사항
거부 사유 TOP 3
| 이유 | 해결 |
|---|
| 개인정보 정책 미등록 | Privacy Policy URL 반드시 입력 |
| 앱 충돌 또는 버그 | 충분한 테스트 후 제출 |
| 명확하지 않은 기능 | 앱 설명과 스크린샷 명확하게 작성 |
체크리스트
- 번들 ID 정확한지 확인
- 모든 권한(카메라, 위치 등) 사용 이유 설명
- 스크린샷에 텍스트가 있으면 모든 언어로 준비
- 테스트 계정 필요하면 준비 (이메일/비밀번호)
- 앱 아이콘 1024x1024px 준비