apk파일로 휴대폰에 앱 설치
$ flutter build apk
빌드 끝난 후 build
폴더 -> app-release.apk
파일 폰에 옮겨서 설치 진행.
Google Play Console에서 앱을 올려서 배포
flutter build apk
앱 설치파일.
거의 모든 안드로이드 앱에 호환될 수 있도록 함.
용량이 매우 크다.
보통 개발자의 서명이 들어간다.
flutter build appbundle
apk 빌드 킷
사용자의 디바이스에만 맞는 호환성 제공
용량이 더 작다. 따라서 이 방식을 더 많이함.
홈 디렉터리에 upload-keystore.jks
를 만든다.
// 맥/리눅스 환경
keytool -genkey -v -keystore ~/upload-keystore.jks -keyalg RSA \
-keysize 2048 -validity 10000 -alias upload
// 윈도우 환경
keytool -genkey -v -keystore %userprofile%\upload-keystore.jks ^
-storetype JKS -keyalg RSA -keysize 2048 -validity 10000 ^
-alias upload
[project]/andriod/key.properties
경로에 key.properties
를 만든다.
storeFile
에 keystore파일의 절대경로
를 넣는다.
keyAlias
는 별칭. 이 경우 위에 upload라는 이름으로 설정되어있기 때문에 upload로 쓰면 된다.
storePassword, keyPassword는 앞에서 친 패스워드를 사용한다.
storePassword=<password-from-previous-step>
keyPassword=<password-from-previous-step>
keyAlias=upload
storeFile=<keystore-file-location>
[project]/android/app/bundle.gradle
을 수정한다.
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}
android {
...
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.debug
}
}
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}