[Flutter] 앱 발행하기(Build)

멋진감자·2025년 7월 9일
0

Flutter

목록 보기
6/25
post-thumbnail

📱앱 발행하기

Bundle ID 생성

  • android/app/build.gradle 파일에 있는
    applicationId = "com.example.contact_app" 이 기존 Bundle ID
  • 프로젝트 생성 시 자동 생성, com.회사명.앱이름 으로 지어주는데 변경 가능
  • View > Tool Windows > Terminal
    dart pub global activate rename 입력
  • rename setAppName --targets ios,android --value "com.회사명.앱이름" 입력
  • 추후 ios 앱 발행 시 ID에 언더바(_)가 포함되면 문제될 수 있음

.apk 파일 발행

  • File > Project Structure
  • SDK 버전 선택 > OK
  • Build > Flutter > Build APK
  • 생성된 .apk 파일을 폰으로 옮기면 바로 설치 가능
  • 말고 플레이스토어에 올리려면 아래 과정 따라가기

key 파일 생성

  • 터미널에 flutter doctor -v 입력
  • Java binary at: 뒤의 주소 중 bin까지 복사
  • 경로 중 띄어쓰기 포함되어 있는 곳은 큰 따옴표로 묶어두기
  • key 파일 저장할 폴더 하나 만들기
    폴더 안의 내용물이 전부 삭제되므로 반드시 새로운 폴더 생성
  • 아래 폼에 맞게 입력 후 터미널에 입력
// 폼
복사해둔경로\keytool -genkey -v -keystore key파일넣을폴더경로\upload-keystore.jks -storetype JKS -keyalg RSA -keysize 2048 -validity 10000 -alias upload

// 예시
C:\"Program Files"\Android\"Android Studio1"\jbr\bin\keytool -genkey -v -keystore C:\flutter_key\upload-keystore.jks -storetype JKS -keyalg RSA -keysize 2048 -validity 10000 -alias upload 
  • key 비번 입력 후 폴더 경로와 함께 잘 기억해뒀다가
  • 현재 프로젝트의 android 폴더 안에 key.properties 생성
  • 아래 폼에 맞게 입력하고 저장(원(won) 기호 말고 / 사용)
// 폼
storePassword=입력한비번1
keyPassword=입력한비번2
keyAlias=upload
storeFile=key파일경로/upload-keystore.jks

// 예시
storePassword=123456
keyPassword=123456
keyAlias=upload
storeFile=C:/flutter_key/upload-keystore.jks
  • 이번엔 android/app/build.gradle 파일 내
    android { 바로 전에 아래 코드 네 줄 붙여넣기
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
    keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}

android { ..
  • android {} 안쪽, buildTypes { 바로 전에 아래 코드 여덟 줄 붙여넣기
signingConfigs {
    release {
        keyAlias keystoreProperties['keyAlias']
        keyPassword keystoreProperties['keyPassword']
        storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
        storePassword keystoreProperties['storePassword']
    }
}
  • buildTypes { 안에 debug -> release로 수정
buildTypes {
    release {
        signingConfig signingConfigs.release
    }
}

.aab 파일 발행

  • Build > Flutter > Build App Bundle
  • 이걸 구글 플레이스토어에 등록하면 되는데
    이 때 개발자 계정(생성 시 25달러 결제) 필요
  • 우선 비공개로 올려서 앱 테스트 가능
profile
난멋져

0개의 댓글