부끄럽게도 지금까지 빌드 타입별로 앱을 생성하는 작업을 자의로 혹은 의식해서 작업은 하지 않았던것 같습니다. 최근에 시간에 여유가 있어서 이것저것 알아보면서 공부하다보니 빌드 타입별로 나눌 수 있다는것을 인지했습니다 ^^;;;
참고로 안드로이드는 공식적으로 BuildTypes 은 debug, release 두가지가 있습니다. 그리고 추가적으로 빌드 타입을 만들 수 있습니다.
그리고 추가적으로 create() 라는 함수를 통해서 Stage, Alpha, Beta 등의 타입을 생성할 수 있습니다.
buildTypes {
getByName("debug") {
applicationIdSuffix = ".debug"
// 아래는 제가 필요에 의해서 만든 추가 작업입니다.
debuggable(true)
isMinifyEnabled = false
versionNameSuffix = "debug"
firebaseCrashlytics {
mappingFileUploadEnabled = false
}
manifestPlaceholders["applicationLabel"] = "@string/app_name_debug"
}
getByName("release") {
isMinifyEnabled = true
isShrinkResources = true
debuggable(false)
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
firebaseCrashlytics {
mappingFileUploadEnabled = true
}
manifestPlaceholders["applicationLabel"] = "@string/app_name"
}
create("stage") {
// initWith 는 debug 의 설정과 같이 한다는 의미입니다.
initWith(buildTypes.getByName("debug"))
applicationIdSuffix = ".stage"
manifestPlaceholders["applicationLabel"] = "@string/app_name_stage"
}
}
그리고 빌드 타입별로 나누기 위해서는 google-services.json 을 각 빌드 별로 폴더를 생성해서 넣어줘야합니다. 그리고 각 json 파일의 package_name 의 뒤에 빌드 타입에 맞게 .debug, .stage 등을 넣어줘야합니다.
위와같이 빌드 타입별로 나누고 빌드를 하면 다음과 같이 BuildTypes 이 생성된것을 확인할 수 있습니다.
반응형
'Dev > Android' 카테고리의 다른 글
안드로이드 업데이트가 거부후 재업로드 시간이 이렇게 오래걸려?! (0) | 2021.02.09 |
---|---|
전화, SMS 권한 설정 업데이트 거부(리젝) 되었습니다 ㅠ (2) | 2021.02.05 |
Cannot access class 'java.net.URI'. Check your module classpath for missing or conflicting dependencies (0) | 2021.01.29 |
구글플레이 내부 앱 공유 설정 활성화 시키는 방법 (0) | 2021.01.07 |
오픈소스 라이브러리 표시 방법 (0) | 2020.12.27 |