본문 바로가기

코딩

Flutter APK 빌드 가이드

728x90
반응형


🚀 Flutter APK 빌드 가이드

📋 사전 준비사항

1. Android 권한 설정 확인

android/app/src/main/AndroidManifest.xml에 다음 권한들이 있는지 확인:

<manifest xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 기본 권한 -->
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />

    <!-- OCR 기능을 위한 권한 -->
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

    <!-- Android 13+ 미디어 권한 -->
    <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />

    <!-- 카메라 기능 선언 -->
    <uses-feature 
        android:name="android.hardware.camera" 
        android:required="false" />
    <uses-feature 
        android:name="android.hardware.camera.autofocus" 
        android:required="false" />
</manifest>

2. 앱 정보 설정 (선택사항)

android/app/src/main/AndroidManifest.xml에서 앱 이름과 아이콘 확인:

<application
    android:label="영화 구문 검색"
    android:name="${applicationName}"
    android:icon="@mipmap/ic_launcher">

🔨 APK 빌드 방법

방법 1: 디버그 APK (개발/테스트용) ⚡

가장 빠르고 간단한 방법:

# 프로젝트 루트 디렉토리에서 실행
flutter build apk --debug

생성 위치: build/app/outputs/flutter-apk/app-debug.apk

방법 2: 릴리즈 APK (배포용) 🎯

실제 배포용 최적화된 APK:

# 릴리즈 모드로 빌드
flutter build apk --release

생성 위치: build/app/outputs/flutter-apk/app-release.apk

방법 3: 여러 아키텍처 분리 빌드 📱

각 CPU 아키텍처별로 APK 분리 (APK 크기 최적화):

# 아키텍처별 분리 빌드
flutter build apk --split-per-abi --release

생성되는 파일들:

  • app-arm64-v8a-release.apk (64비트 ARM - 최신 기기)
  • app-armeabi-v7a-release.apk (32비트 ARM - 구형 기기)
  • app-x86_64-release.apk (x86 64비트 - 에뮬레이터)

📦 완전한 빌드 과정

1단계: 프로젝트 정리 🧹

# 기존 빌드 캐시 정리
flutter clean

# 패키지 재설치
flutter pub get

2단계: 빌드 실행 🔨

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

3단계: APK 파일 확인 📍

# 빌드 결과 확인
ls -la build/app/outputs/flutter-apk/

🎯 빌드 옵션 상세

디버그 vs 릴리즈

구분 디버그 릴리즈
용도 개발/테스트 실제 배포
크기 작음 (최적화)
성능 느림 빠름
디버깅 가능 불가능
빌드 시간 빠름 느림

권장 빌드 명령어

개발/테스트용:

flutter build apk --debug

최종 배포용:

flutter build apk --release --split-per-abi

빠른 테스트용:

flutter build apk --profile

📲 APK 설치 방법

1. 직접 설치

생성된 APK 파일을 Android 기기로 전송 후 설치

2. ADB로 설치

# USB 디버깅 연결된 기기에 설치
adb install build/app/outputs/flutter-apk/app-release.apk

3. Flutter로 직접 설치 및 실행

# 연결된 기기에 바로 설치하고 실행
flutter install --release

⚠️ 문제 해결

빌드 실패 시

# 1. 캐시 정리
flutter clean
flutter pub get

# 2. Gradle 캐시 정리
cd android
./gradlew clean
cd ..

# 3. 다시 빌드
flutter build apk --release

권한 오류 시

  • Android SDK가 제대로 설치되어 있는지 확인
  • flutter doctor 명령어로 환경 점검

크기가 너무 클 때

# 아키텍처별 분리 빌드로 크기 최적화
flutter build apk --split-per-abi --release

🎊 완료!

디버그 APK: 개발/테스트용 - 빠른 빌드
릴리즈 APK: 배포용 - 최적화된 성능
분리 APK: 아키텍처별 - 최소 크기

이제 타자 + 음성 + 사진 3가지 입력 방식을 지원하는 영화 구문 검색 앱의 APK가 완성되었습니다! 🎬📱✨

728x90
반응형