Android SDK 빌드 도구는 Android 앱을 빌드하는 데 필요한 Android SDK의 구성요소입니다. 이 도구는<sdk>/build-tools/
디렉터리에 설치되어 있습니다.
Android SDK Manager로 최신 버전을 다운로드하여 빌드 도구 구성요소를 항상 업데이트된 상태로 유지해야 합니다. Gradle용 Android 플러그인 3.0.0 이상을 사용할 경우 프로젝트는 플러그인이 지정하는 빌드 도구의 기본 버전을 자동으로 사용합니다. 다른 버전의 빌드 도구를 사용하려면 다음과 같이 모듈의 build.gradle
에서 buildToolsVersion
을 사용하여 버전을 지정합니다.
Groovy
android { buildToolsVersion "34.0.0" ... }
Kotlin
android { buildToolsVersion = "34.0.0" ... }
버전 기록
아래 섹션에서는 빌드 도구의 출시에 관한 정보를 확인할 수 있습니다. SDK에서 사용 가능한 빌드 도구의 버전을 확인하려면 Android SDK Manager의 설치된 패키지 목록을 참고하세요.
빌드 도구, 버전 34.0.0 RC3(2023년 4월)
일반적인 버그 수정 및 개선사항
빌드 도구, 버전 34.0.0(2023년 2월)
이 업데이트에는 Android 14 미리보기 API로 빌드하기 위한 지원 기능이 포함되었습니다.
빌드 도구, 버전 33.0.2(2023년 2월)
이 업데이트에 따라 다음 문제가 해결되었습니다.
-
core-lambda-stubs.jar
버전 33.0.0은 macOS와 Linux/Windows에서 다릅니다. (문제 #237299698)
빌드 도구, 버전 33.0.1(2022년 11월)
이 업데이트에 따라 다음 문제가 해결되었습니다.
- 빌드 도구 33.0.0에서 AIDL이 실패합니다. (문제 #236167971)
빌드 도구, 버전 30.0.0 rc4(2020년 5월)
이 업데이트에는 Android 11 미리보기 API로 빌드하기 위한 지원 기능이 포함되었습니다.
빌드 도구, 버전 29.0.3(2020년 1월)
이 업데이트에 따라 다음 문제가 해결되었습니다.
- macOS Catalina의 Renderscript 관련 빌드 문제 (문제 #142590626)
빌드 도구, 버전 29.0.2(2019년 8월)
이 업데이트에 따라 다음 문제가 해결되었습니다.
빌드 도구, 버전 29.0.0(2019년 6월)
이 업데이트에는 API 수준 29로 빌드하기 위한 지원 기능이 포함되었습니다.
빌드 도구, 버전 28.0.3(2018년 9월)
이 업데이트에는 Android Gradle 플러그인 3.2.0 지원이 포함되었으며, 다음과 같은 문제가 해결되었습니다.
androidx.renderscript.RenderScript.create()
를 호출할 때 앱이 다운되는 JNI 라이브러리 버그가 수정되었습니다.androidx.annotation
리소스에서Program type already present
빌드 오류를 일으키는 버그가 수정되었습니다.
빌드 도구, 버전 28.0.2(2018년 8월)
최신 버전의 D8이 포함되었습니다.
빌드 도구, 버전 27.0.3(2017년 12월)
자바 8 언어 기능을 사용 설정할 때 람다 컴파일 지원이 향상되었습니다.
빌드 도구, 버전 27.0.2(2017년 12월)
자바 8 언어 기능 지원이 향상되었습니다.
빌드 도구, 버전 27.0.1(2017년 11월)
테스트 APK를 위한 레거시 멀티덱스 지원 기능이 추가되었습니다. (문제 #37324038)
빌드 도구, 버전 26.0.2(2017년 10월)
일반적인 버그 수정 외에도 이번 출시에는 다음과 같은 업데이트가 포함되었습니다.
apksigner
를 버전 0.8로 업데이트합니다.- 자바 9와의 호환성 (문제 #37137869)
-
ASCII가 아닌 비밀번호를 사용하여 키 저장소와 암호화된 키를 처리하는 새로운
--pass-encoding
매개변수가 추가되었습니다. 자바 9로 전환하고apksigner
가 키 저장소 또는 키를 복호화하지 못하는 경우, 이 매개변수를 사용하여 키 저장소 또는 키를 만들 때 사용한 문자 인코딩을 지정하세요. 자세한 내용은apksigner
문서를 참고하거나 명령줄에서apksigner sign --help
를 실행하세요. -
지원되지 않는 다이제스트 또는 서명 알고리즘으로 인해
apksigner
가 JAR 서명을 확인할 수 없을 때 나타나는 오류 메시지가 개선되었습니다. (문제 #63525618)
- Gradle용 Android 플러그인
3.0.0-beta7
이상을 사용할 때 AAPT2 데몬 모드를 지원합니다.
빌드 도구, 버전 26.0.1(2017년 7월)
일반적인 버그 수정 외에도 이번 출시에는 빌드 도구 패키지에 apksigner
가 복원되고(버전 26.0.0에서는 실수로 누락됨), 다음과 같은 도구 업데이트가 포함되었습니다.
- 보안 하드웨어가 보유한 키로 서명할 수 있도록 PKCS #11 지원이 추가되었습니다. (문제 #37140484)
- 서명하기 전에 추가 JCA Providers의 로드를 지원합니다.
- APK를 확인할 때
android:targetSandboxVersion
을 적용합니다. - 서명할 때 파일명에 'CR'(캐리지 리턴), 'LF'(라인 피드) 또는 'NUL'(Null) 특수문자가 포함된 파일이 있는 APK를 거부합니다.
- 공백이 있는 매개변수를 제대로 처리하기 위해
apksigner.bat
를 수정합니다. (문제 #38132450) MANIFEST.MF
에서 동일한 항목에 다수의 다이제스트가 있을 때 JAR 서명 확인에서 버그를 수정합니다. (문제 #38497270)
빌드 도구, 버전 26.0.0(2017년 6월)
API 수준 26으로 빌드하기 위한 지원 기능이 추가되고 일반적인 버그가 수정되었습니다.
빌드 도구, 버전 25.0.3(2017년 4월)
apksigner
업데이트:
- 기존의
--out
매개변수와의 대칭을 위해--in
매개변수가 추가되었습니다. --key-pass
를 사용하여 키의 비밀번호를 지정하지 않는 경우apksigner
는 키 비밀번호로 키 저장소 비밀번호를 사용합니다. 그러나 키에 다른 비밀번호가 필요한 경우 명령줄에 키 비밀번호를 입력하라는 메시지가 표시됩니다. (문제 #37134986)- ASCII가 아닌 비밀번호와 관련해
jarsigner
와의 호환 기능이 추가되었습니다. (문제 #37135737)
빌드 도구, 버전 25.0.2(2016년 12월)
버그가 수정되었습니다.
빌드 도구, 버전 25.0.1(2016년 11월)
이번 출시에는 버그 수정 및 다음과 같은 apksigner
의 개선사항이 포함되었습니다.
- 난독화된 JAR 항목명의 APK를 지원합니다.
--print-certs
스위치는 이제 MD5 지문도 덤프합니다.
빌드 도구, 버전 25.0.0(2016년 10월)
Jack 도구 모음의 버그 수정:
- ASCII가 아닌 소스 파일을 지원하는 Jack 문제가 해결되었습니다. (문제 #218892)
- 일부 컴파일 중에
AssertionError
를 일으키는 문제가 해결되었습니다. (문제 #208414)
빌드 도구, 버전 24.0.3(2016년 9월)
jarsigner
를 대체할 APK 서명 도구apksigner
가 추가되었습니다. 기본적으로apksigner
는 (jarsigner
가 사용한) 기존의 JAR 서명 체계와 Android 7.0(API 수준 24)에 도입된 APK 서명 체계 v2를 사용하여 APK에 서명합니다. APK 서명 체계 v2로 서명한 APK를 수정하면 서명이 무효화됩니다. 따라서zipalign
과 같은 APK 후처리를apksigner
가 호출된 이후가 아니라 이전에 실행해야 합니다.jarsigner
와 달리apksigner
는 APK 정렬과 압축을 유지하기 때문에apksigner
전에zipalign
을 호출하면 잘 작동됩니다.
빌드 도구, 버전 23.0.3(2016년 3월)
- arm64 기기에서의 RenderScript 지원 라이브러리 문제가 해결되었습니다.
- 일부 Jelly Bean 기기에서의 RenderScript 지원 라이브러리 문제가 해결되었습니다.
- Gradled용 Android 플러그인 버전 2.1.0 이상을 사용할 때
renderscriptTargetAPI 21+
을 지원합니다.
빌드 도구, 버전 23.0.2(2015년 11월)
dx
도구의 병합 성능이 향상되었습니다.- Windows용 RenderScript 컴파일러 문제가 수정되었습니다.
빌드 도구, 버전 23.0.1(2015년 10월)
RenderScript 도구 문제가 해결되었습니다.
빌드 도구, 버전 23.0.0(2015년 8월)
Android 6.0(API 수준 23) 출시 관련 지원 기능이 추가되었습니다.
빌드 도구, 버전 22.0.1(2015년 3월)
Android 4.4(API 수준 19)~Android 4.1(API 수준 16) 기기에서 RenderScript 커널과의 호환성 문제가 해결되었습니다.
빌드 도구, 버전 22.0.0(2015년 3월)
Android 5.1(API 수준 22) 지원 기능이 추가되었습니다.
빌드 도구, 버전 21.1.2(2015년 2월)
32비트 모드에서 데이터 레이아웃을 빌드할 때 발생하는 문제가 수정되었습니다.
빌드 도구, 버전 21.1.1(2014년 11월)
멀티덱스 스크립트 문제를 수정했습니다.
빌드 도구, 버전 21.1(2014년 10월)
64K 메서드 참조 제한 문제를 해결하기 위해 APK 및 Jack 지원용 멀티덱스 파일 지원이 추가되었습니다.
빌드 도구, 버전 21.0.2(2014년 10월)
Windows 플랫폼의 불안정 문제를 해결하기 위해 Eclipse ADT의 업데이트가 완료되었습니다.
빌드 도구, 버전 21.0.1(2014년 10월)
Windows에서 Eclipse ADT 초기 업데이트가 이루어졌습니다. 버전 21.0.2를 사용하세요.
빌드 도구, 버전 21.0.0(2014년 10월)
- 일반 사항:
-
- Android 5.0(API 수준 21) 지원 기능이 추가되었습니다.
- RenderScript는 이제 API 수준 21 이상에서 원활한 32/64비트 작업을 지원합니다.
- JaCoCo 플러그인 사용 시 Gradle 빌드 시스템 관련 문제가 해결되었습니다. (문제 69174)
- Windows에서 긴 명령줄과 함께 사용할 input-list 옵션이 추가되었습니다.
빌드 도구, 버전 20.0.0(2014년 6월)
- 일반 사항:
-
- Android Wear 지원이 추가되었습니다.
빌드 도구, 버전 19.1.0(2014년 5월)
- 일반 사항:
-
- 빌드 도구에
zipalign
이 추가되었습니다. - 컴파일에 실패한 XML 파일을 무시하기 위해
aapt
를 수정했습니다.
- 빌드 도구에
빌드 도구, 버전 19.0.3(2014년 3월)
RenderScript 지원 문제가 해결되었습니다.
빌드 도구, 버전 19.0.2(2014년 2월)
빌드 도구, 버전 19.0.1(2013년 12월)
- 그 밖의 빌드 문제를 해결했습니다.
-
- Gradle을 사용하여 NDK 모드에서 RenderScript를 컴파일하는 지원 기능의 문제를 해결했습니다.
- dx 빌드에서
BufferOverflowException
문제가 해결되었습니다. (문제 61710)
빌드 도구, 버전 19(2013년 10월)
Android 4.4(API 수준 19) 빌드 타겟 지원이 추가되었습니다.
빌드 도구, 버전 18.1.1(2013년 9월)
일부 사소한 빌드 문제가 해결되었습니다.
빌드 도구, 버전 18.1.0(2013년 9월)
RenderScript 지원 모드 관련 문제가 해결되었습니다.
빌드 도구, 버전 18.0.1(2013년 7월)
Android 4.3(API 수준 18) 빌드 타겟의 지원이 추가되었습니다.
빌드 도구, 버전 17(2013년 5월)
첫 출시입니다.
- 일반 사항:
-
- Android 4.2(API 수준 17) 빌드 타겟의 지원이 포함되었습니다.
- 빌드 도구를 통합 개발 환경(IDE) 구성요소와 별도로 업데이트할 수 있도록 Android SDK의 빌드별 구성요소를 플랫폼 도구 구성요소와 분리했습니다.