본문 바로가기

Android/ComposeUI

Android Build Variants 설정

반응형

안드로이드를 개발하다가 로컬이랑 AWS 테스트를 진행하는데..

주석 했다 풀었다 했다 풀었다... 반복하기 귀찮았다.

그래서 귀뜸으로 들은 Build Variants설정을 하기로 했다..

 

우선 계획은 debug와 release 두개만 추가하기로 했다.

 

1. build.gradle (Module 수준) 파일을 열어서, 다음과 같이 두 개의 다른 build 타입을 정의합니다.

android {
    ...
    buildTypes {
        debug {
            buildConfigField("String", "BASE_URL", "\"http://debug.example.com/\"")
            ...
        }
        release {
            buildConfigField("String", "BASE_URL", "\"http://release.example.com/\"")
            ...
        }
    }
    ...
}

이제 'BASE_URL''debug' 빌드에서는 'http://debug.example.com/' 로 설정되고, 'release' 빌드에서는 'https://release.example.com/' 로 설정됩니다.

 

2. Kotlin 또는 Java 코드에서 'BASE_URL'을 사용하려면, 다음과 같이 하면 됩니다.

val baseUrl = BuildConfig.BASE_URL
String baseUrl = BuildConfig.BASE_URL;

이렇게 하면 debug 버전과 release 버전 각각에서 서로 다른 base URL을 사용할 수 있습니다. 'debug' 빌드에서는 디버깅을 위한 서버로 연결되고, 'release' 빌드에서는 배포용 서버로 연결됩니다.

 

반응형

역시 개발은 내마음대로 안되는거지... 적용하면서 발생한 에러도 정리해 보았습니다.

적용하는데 도움이 되셨으면 좋겠습니다.

적용시 발생한 에러 및 해결 방안

1. Build Type 'debug' contains custom BuildConfig fields, but the feature is disabled.

이 에러는 'debug' 빌드 타입에 커스텀 'BuildConfig' 필드를 추가하려고 시도했지만, 현재 프로젝트에서 이 기능이 비활성화되어 있음을 나타냅니다. 이 경우, 이 기능을 활성화해야합니다.

먼저, 프로젝트의 'build.gradle' 파일에서 Kotlin 또는 Java 플러그인을 사용하고 있는지 확인하세요. 즉, 아래와 유사한 코드가 있는지 확인합니다.

apply plugin: 'kotlin-android'
// 또는
apply plugin: 'com.android.application'

만약 Kotlin 플러그인을 사용하고 있다면, 'build.gradle' 파일에서 'android' 블록 안에 아래의 코드를 추가하여 'BuildConfig' 필드를 사용할 수 있도록 설정할 수 있습니다.

android {
    ...
    buildFeatures {
        buildConfig true
    }
    ...
}

 

2. Unresolved reference: BuildConfig

'Unresolved reference: BuildConfig' 오류는 보통 안드로이드 프로젝트에서 'BuildConfig' 클래스를 찾지 못할 때 발생합니다. 이 문제를 해결하려면 다음을 확인하세요:

 

1. build.gradle 파일:

모듈 수준의 build.gradle 파일에 buildConfigField가 올바르게 정의되어 있는지 다시 확인하세요.

 

2. 프로젝트 재빌드:
프로젝트를 다시 빌드하고 오류가 여전히 발생하는지 확인하세요. 안드로이드 스튜디오에서 Build > Rebuild Project를 선택하거나 Gradle 창에서 "refresh" 아이콘을 클릭하여 재빌드할 수 있습니다.

 

3. Import BuildConfig:
Kotlin 또는 Java 파일에서 BuildConfig를 사용할 때, 올바른 패키지에서 가져오고 있는지 확인하세요. Kotlin 파일에서는 아래와 같이 가져올 수 있습니다.
BuildConfig 파일은 안드로이드 스튜디오에 의해 자동으로 생성됩니다. BuildConfig 클래스는 빌드 프로세스 중에 생성되며, 여기에는 빌드 구성과 관련된 여러 정보가 포함됩니다. 이 클래스를 직접 생성하거나 관리할 필요가 없습니다.

import com.example.yourpackage.BuildConfig
import com.example.yourpackage.BuildConfig;

 

4. 프로젝트를 다시 열어보세요:
가끔씩 안드로이드 스튜디오에서 파일이나 라이브러리가 정확하게 로드되지 않을 수 있습니다. 프로젝트를 다시 열고 재시작하면 이 문제가 해결될 수 있습니다.

 

5. Cache 파일 삭제:
경우에 따라 빌드 캐시 파일이 손상될 수 있습니다. 이런 경우에는 .gradle 디렉토리와 .idea 디렉토리를 프로젝트에서 삭제한 후 다시 빌드해보세요.

만약 이러한 단계들이 문제를 해결하지 못한다면, 프로젝트 구성이나 라이브러리 의존성에 문제가 있을 수 있으므로 이에 대한 추가적인 조사가 필요할 것입니다.

반응형

'Android > ComposeUI' 카테고리의 다른 글

Jetpack Compose Navigation  (0) 2022.12.28