Google Play Store 앱 배포 가이드

사전 준비사항

  • ✅ Flutter 설치 완료
  • ✅ Google Play Console 개발자 계정 등록 완료
  • ✅ Gemini CLI 설치 완료

1. 앱 준비 및 설정

1.1 앱 아이콘 설정

# pubspec.yaml에 flutter_launcher_icons 추가
dev_dependencies:
  flutter_launcher_icons: ^0.13.1

flutter_icons:
  android: true
  ios: false
  image_path: "assets/icon/app_icon.png"
  min_sdk_android: 21
flutter pub get
flutter pub run flutter_launcher_icons

1.2 앱 메타데이터 설정

android/app/src/main/AndroidManifest.xml 파일 수정:

<application
    android:label="앱 이름"
    android:name="${applicationName}"
    android:icon="@mipmap/ic_launcher">

1.3 앱 버전 설정

pubspec.yaml에서 버전 설정:

version: 1.0.0+1

2. Release APK/AAB 빌드

2.1 키스토어 생성

keytool -genkey -v -keystore ~/upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias upload

2.2 키스토어 설정

android/key.properties 파일 생성:

storePassword=키스토어_패스워드
keyPassword=키_패스워드
keyAlias=upload
storeFile=../upload-keystore.jks

2.3 Gradle 설정

android/app/build.gradle 수정:

// 파일 상단에 추가
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
    keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}

android {
    // 기존 설정...
    
    signingConfigs {
        release {
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
            storePassword keystoreProperties['storePassword']
        }
    }
    
    buildTypes {
        release {
            signingConfig signingConfigs.release
        }
    }
}

2.4 AAB 파일 빌드

flutter build appbundle --release

빌드된 파일 위치: build/app/outputs/bundle/release/app-release.aab

3. Google Play Console 설정

3.1 새 앱 만들기

  1. Google Play Console](https://play.google.com/console)) 접속
  2. "앱 만들기" 클릭
  3. 앱 정보 입력:
    • 앱 이름
    • 기본 언어 (한국어)
    • 앱 또는 게임 선택
    • 무료 또는 유료 선택

예시)

image.pngimage.png클릭하여 확대

3.2 앱 콘텐츠 설정

다음 항목들을 순서대로 완료:

개인정보처리방침

  • 개인정보처리방침 URL 입력 (필수)

앱 액세스 권한

  • 제한된 액세스 여부 설정
  • 필요시 로그인 정보 제공

광고

  • 앱에 광고 포함 여부 설정

콘텐츠 등급

  • 설문지 작성하여 연령 등급 받기

타겟 고객층

  • 타겟 연령대 설정
  • 어린이 대상 여부 확인

뉴스 앱

  • 뉴스 앱 여부 설정

4. 스토어 등록정보 작성

4.1 기본 정보

  • 앱 이름: 최대 50자
  • 간단한 설명: 최대 80자
  • 자세한 설명: 최대 4,000자

4.2 그래픽 에셋

필수 이미지들:

  • 앱 아이콘: 512 x 512 PNG
  • 스크린샷: 최소 2개, 최대 8개
    • 휴대전화: 320-3840px (가로/세로 비율 2:1 이내)
  • 고해상도 아이콘: 512 x 512 PNG

선택적 이미지들:

  • 기능 그래픽: 1024 x 500 PNG
  • 프로모션 동영상: YouTube URL

4.3 카테고리 및 연락처 정보

  • 앱 카테고리 선택
  • 개발자 연락처 정보 입력

5. 앱 릴리스

5.1 프로덕션 트랙에 릴리스 만들기

  1. "릴리스" → "프로덕션" 선택
  2. "새 릴리스 만들기" 클릭
  3. AAB 파일 업로드
  4. 릴리스 이름 및 출시 노트 작성

5.2 출시 노트 작성

버전 1.0.0
- 최초 출시
- 핵심 기능 구현
- 안정성 개선

5.3 검토를 위해 제출

  1. 모든 필수 항목 완료 확인
  2. "검토를 위해 제출" 클릭
  3. Google의 검토 완료 대기 (보통 1-3일)

6. 배포 후 관리

6.1 버전 업데이트

새 버전 배포시:

# pubspec.yaml에서 버전 업데이트
version: 1.0.1+2

# 새 AAB 빌드
flutter build appbundle --release

# Play Console에서 새 릴리스 생성

6.2 성능 모니터링

  • Play Console의 통계 및 분석 확인
  • 사용자 리뷰 및 평점 관리
  • 충돌 보고서 확인

7. 유용한 명령어 모음

# 디버그 APK 빌드
flutter build apk --debug

# 릴리스 APK 빌드 (AAB 권장)
flutter build apk --release

# AAB 빌드 (권장)
flutter build appbundle --release

# 앱 번들 분석
bundletool build-apks --bundle=app-release.aab --output=app.apks

# 코드 난독화와 함께 빌드
flutter build appbundle --obfuscate --split-debug-info=/<project-name>/<directory>

주의사항

  1. 키스토어 백업: 키스토어 파일과 패스워드를 안전하게 보관하세요. 분실시 앱 업데이트가 불가능합니다.

  2. 패키지 이름: 한번 설정된 패키지 이름(applicationId)은 변경할 수 없습니다.

  3. 버전 코드: 새 릴리스마다 버전 코드(+뒤의 숫자)는 반드시 증가해야 합니다.

  4. 개인정보처리방침: 개인정보를 수집하는 앱은 반드시 개인정보처리방침이 필요합니다.

  5. 권한 최소화: 불필요한 권한 요청은 피하고, 필요한 권한만 요청하세요.

이 가이드를 따라하시면 성공적으로 Play Store에 앱을 배포할 수 있습니다!