처음 배포하려면
keystore를 생성해야한다
window
keytool -genkey -v -keystore c:/Users/USER_NAME/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key -storetype JKS
mac
keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
주황색 부분은 key를 위치할 경로로 바꿔주고
*노란색부분은 추가해줘야 빌드시 에러가 안난다
(2048은 키 사이즈고 10000은 서명서의 유효기간 )
이름과 성을 입력하십시오. : COMPANY
조직 단위 이름을 입력하십시오. : COMPANY
조직 이름을 입력하십시오. : COMPANY
구/군/시 이름을 입력하십시오? : Seoul
시/도 이름을 입력하십시오. : Seoul
이 조직의 두 자리 국가 코드를 입력하십시오 : KR
마지막에 y눌르고 엔터치고 비번한번더 입력하면 원하는경로에 key생성된다
그 키를
android - app 단위안에 넣는다
keystore 참조
android 폴더안에 key.properties 생성
storePassword=비밀번호
keyPassword=비밀번호
keyAlias=key
storeFile=./key.jks
proguard 설정
android-app내에 proguard-rules.pro 생성
## Flutter wrapper
-keep class io.flutter.app.** { *; }
-keep class io.flutter.plugin.** { *; }
-keep class io.flutter.util.** { *; }
-keep class io.flutter.view.** { *; }
-keep class io.flutter.** { *; }
-keep class io.flutter.plugins.** { *; }
-dontwarn io.flutter.embedding.**
build gradle 셋팅
android 위에다가 추가
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}
android {
buildTypes 부분에 signingConfigs.debug 를 release로 변경 후 아래 내용 추가
*useProguard true빼야함 넣으면 에러남 업데이트됨
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.release
minifyEnabled true
//useProguard true *넣으면 에러남 업데이트됨 빼야함
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
아랫부분 android 안에 추가
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
storePassword keystoreProperties['storePassword']
}
}
이런모양
이제 terminal에
flutter build appbundle
flutter build apk
or
android studio에서
bundle,apk 선택해서 만들면
해당 경로에 파일이 있다 (flutter 프로젝트 위치 내의 경로)
끝
'flutter > android' 카테고리의 다른 글
firebase setting(android) (0) | 2021.07.25 |
---|