-
안드로이드 빌드 도구, GradleProgramming/Android 2020. 8. 12. 21:04
- Gradle이란 빌드도구이다.
- 안드로이드 스튜디오(IDE)와 Gradle(빌드도구)는 독립적이다. => Sync(동기화)작업을 수행해야한다.
- 안드로이드 스튜디오는 IDE와 빌드도구가 분리되어 있어 프로젝트를 보다 깔끔하게 관리가 가능하다.
- build.gradle 파일
- 모듈의 빌드 방법을 정의한 빌드스크립트 파일이다.
- Gadle은 Android 앱이나 라이브러리를 컴파일, 빌드 및 패키징하기 위한 유연한 방법을 제공한다.
- apply plugin: 'com.android.application'
- 안드로이드 플러그인 사용을 gradle에 적용하는 것.
- android [...}
- 안드로이드와 관련된 빌드 설정을 세팅하는 블럭
- compileSdkVersion, buildToolsVersion
- compileSdkVersion은 앱 컴파일시 사용할 SDK 버전을 지정합니다.
- buildToolsVersion 역시 사용할 빌드 툴의 버전을 명시하는 부분입니다.
- defaultConfig{...}
- AndroidMenifest.xml에서 사용하는 설정들에 대해서 동적인 옵션을 주고 싶을 때 이블록 내에 포함시킨다.
- 예를 들면, versionCode나 versionName 등의 값을 이곳에서 설정할 수 있다.
- buildTypes{...}
- dev, alpha, beta, release 같이 빌드 타입 종류를 지정한다.
- dependencies{...}
- 라이브러리 의존성 관리
- 소스코드와 의존성 라이브러리를 엮어서 컴파일 하여 패키징 하는 것.
gradle.wrapper 파일을 통해 gradle을 직접 실행하지 않고 wrapper를 통해 실행한다.
wrapper는 gradle을 최신으로 업데이트 하는 등의 작업을 자동으로 수행한다. 안드로이드 스튜디오의 빌드도 gradle wrapper를 통한 작업이기 때문에 커맨드 라인에서 gradlew를 통해 직접 빌드도 가능하다.
협업을 위한 gradle dependencies 관리
안드로이드 Gradle dependecies 관리하기
안드로이드 팀 단위로 개발함에 있어 다양한 프로젝트에서 다양한 플러그인을 사용하다 보면 동일한 버전을 맞추는 것이 상당히 중요해집니다.
medium.com
위 블로그에 따르면, 안드로이드 앱을 팀단위로 개발할 때, 다양한 플러그인의 동일한 버전을 유지하는 것이 중요하다.
따라서 이를 위해 버전 및 의존성 관리를 build.gradle 파일에 선언하는 것이아니라 별도의 파일을 만들어서 관리한다.
How?
-> gralde 파일을 프로젝트 단위를 생성한후 버전을 위한 변수와 라이브러리 패키지 네임을 별도로 작성한다.
'Programming > Android' 카테고리의 다른 글
[아키텍처] MVP Pattern의 이해 (0) 2020.09.01 [Android] ViewHolder (0) 2020.08.14 [Android Style Guide] Util/Helper/Manager (0) 2020.06.03 FireBase / NoSQL / FireStore (0) 2020.05.28 Android Studio - Github 연동 (0) 2020.05.28