ETC

[Android studio] build gradle

손혜정 2019. 2. 3. 21:37

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에 정의해줌으로써 프로젝트별로 다르게 정의해줄 수 있다)



다른것들은 차차 채워나가자!