[Android studio] build gradle
Android Studio의 Build Gradle:
- Gradle, Gradle plug in
- 안드로이드 앱. 라이브러리를 컴파일/빌드 및 패키징 하기 위한 유연한 방법 제공
- 즉, 컴파일, 빌드(프로젝트 및 소스관리)를 좀 더 쉽고 빠르게 할 수 있도록 설정할 수 있는 단계
- build gradle 설정을 통해서 빌드 속도도 향상시킬수 있다고 한다!
Android studio에서는 단일 프로젝트 또는 다중 프로젝트를 만들 수 있다.
어떤경우가 있냐면.. aar 파일로 import할경우, 해당 library부분이 바뀌면 다시 aar로 추출한다음에 import를 해줘야하는데.. 이렇게 연관있는 프로젝트끼리 작업능률과 속도를 높이기 위해서라고 한다.
Reference:
1) 안드로이드 스튜디오 가이드 : https://developer.android.com/studio/build/gradle-tips?hl=ko
2) 다중 프로젝트 지원 이유: https://limkydev.tistory.com/3
3) productFlavor 속성 : https://gun0912.tistory.com/74?category=560271
4) ext 속성: https://dreamaz.tistory.com/56
예를 들자면 productFlavor 속성을 먼저 보자.
1. build.gradle > productFlavor
-대부분의 소스코드는 똑같고, 일부 경우/값에 의해서 동작을 다르게 해야하는 경우 또는 앱이름,아이콘을 다르게 써야하는 경우에 사용한다
ex) 무료/유료앱에서의 광고유무, 고객용/관리자용 앱, 국가/언어별로 다르게 지원
- 여기서 free, paid 여부에 따라 config값을 생성할 수 있고, 이걸 코드단에서 체크하여 광고여부를 결정할 수 있다.
- 또한 manifestPlaceholders를 사용하여 앱이름도 변경이 가능하다
2. build.gradle > ext
-프로젝트의 추가 property(변수처럼 사용되는 속성값)을 정의하기 위해 사용됨. 여러 프로젝트/모듈에서 사용될경우 여기에 정의하면 편하게 사용할 수 있다. (각 프로젝트의 build gradle에 정의해줌으로써 프로젝트별로 다르게 정의해줄 수 있다)
다른것들은 차차 채워나가자!