안녕하세요 아이티 박사 호입니다. 오늘은 flutter 앱 서명 방법에 대해서 알아보겠습니다.
안드로이드 스튜디오_Kotlin DSL
구글 플레이 콘솔에 업로드를 하기 위해서는 앱 서명이 필수 입니다.
아래 방법을 참고하여 업로드 하시길바랍니다.
1. key 생성 코드 아래 명령어를 터미널 해달 프로젝트 디렉토리에서 실행
keytool -genkey -v -key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias
key 파일이 생성이 되면
해당 파일을 안드로이드 스튜디오에서
생성된 key.jks 파일은 android > app 경로에 붙여넣기를 하고
android > app경로에 key.properties 파일을 추가해서 파일내에 아래의 코드를 추가하면 됩니다.
storePassword=처음에 넣은 비번
keyPassword=마지막에 넣은 비번
keyAlias=key
storeFile=key.jks 키파일 이름
이렇게 추가하고 나선
2. 아래 android > app 경로에 build.gradle.kts 파일을 열어서 초록색 글씨 부분을 추가해주면 됩니다. (참고로 저는 Kotlin DSL 버전입니다.)
import java.util.Properties
import java.io.FileInputStream
plugins {
id("com.android.application")
id("kotlin-android")
// The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
id("dev.flutter.flutter-gradle-plugin")
}
val keystorePropertiesFile = rootProject.file("app/key.properties")
val keystoreProperties = Properties()
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(FileInputStream(keystorePropertiesFile))
}
android {
namespace = ""
compileSdk = flutter.compileSdkVersion
ndkVersion = flutter.ndkVersion
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
kotlinOptions {
jvmTarget = JavaVersion.VERSION_11.toString()
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId = ""
// You can update the following values to match your application needs.
// For more information, see: https://flutter.dev/to/review-gradle-config.
minSdk = flutter.minSdkVersion
targetSdk = flutter.targetSdkVersion
versionCode = flutter.versionCode
versionName = flutter.versionName
}
signingConfigs {
create("release") {
keyAlias = keystoreProperties["keyAlias"] as String?
keyPassword = keystoreProperties["keyPassword"] as String?
storeFile = keystoreProperties["storeFile"]?.let { file(it.toString()) }
storePassword = keystoreProperties["storePassword"] as String?
}
}
buildTypes {
release {
// signingConfig = signingConfigs.getByName("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.getByName("debug")
}
}
}
flutter {
source = "../.."
}
0 Comments