Gradle이란? (https://uroa.tistory.com/64#footnote_link_64_1)
- Gradle이란 빌드 배포 도구(build tool)이다.
- 안드로이드 스튜디오로 프로젝트를 만들면 Gradle이란 것도 같이 생성되는 것을 볼 수 있다.
- 안드로이드 스튜디오(IDE)와 빌드 시스템이 서로 독립적이기 때문이다.
- 이클립스에서는 프로젝트 빌드를 이클립스 내에서 담당했지만, 안드로이드 스튜디오는 코드의 편집만을 담당할 뿐 빌드는 모두 gradle을 통해 수행된다.
- 간혹 안드로이드 스튜디오의 프로젝트 설정과 gradle 빌드 설정이 동기화되지 않아 스튜디오에서 에러로 표시하는 경우도 있다.
- 이전에는 라이브러릴 추가하려면 Jar파일을 받아서 설정해줘야 했지만 라이브러리들이 많아짐에 따라 자동화 도구가 필요해지게 되었고, ant/maven/gradle 등의 라이브러리 도구가 등장했다. 안드로이드 스튜디오는 gradle을 채택해 쓰고 있다.
- 파일 내부 옵션
- apply plugin: 'com.android.application'
- 'com.android.application'은 안드로이드 플러그인 사용을 gradle에 적용하는 것이다.
이 옵션은 top-level에서 선언되어야 한다.
- 'com.android.application'은 안드로이드 플러그인 사용을 gradle에 적용하는 것이다.
- android {…}
- 안드로이드와 관련된 빌드 설정은 이곳 안에서 세팅된다.
- compileSdkVersion, buildToolsVersion
- complieSdkVersion은 앱 컴파일시 사용할 SDK 버전을 지정한다.
buildToolsVersion은 사용할 빌드 툴의 버전을 명시하는 부분이다.
- complieSdkVersion은 앱 컴파일시 사용할 SDK 버전을 지정한다.
- defaultConfig{...}
- AndroidManifest.xml에서 사용하는 설정들에 대해서 동적인 옵션을 주고 싶을 때 이 블록내에 포함시킨다.
예를들면 versionCode나 versionName 등의 값을 이 곳에서 설정할 수 있다.
- AndroidManifest.xml에서 사용하는 설정들에 대해서 동적인 옵션을 주고 싶을 때 이 블록내에 포함시킨다.
- buildTypes{...}
- dev, alpha, beta, release 같이 빌드 탑일을 지정한다.
- dependencies{...}
- 라이브러리와 같은 의존성 추가 시 이곳에 작성한다.
- apply plugin: 'com.android.application'
'Programming > Android' 카테고리의 다른 글
AndroidManifest란? (0) | 2019.05.19 |
---|---|
Application.mk란? (0) | 2019.05.19 |
Android.mk란? (0) | 2019.05.19 |
ABI란? (0) | 2019.04.22 |
NDK란? (0) | 2019.04.17 |