sdkmanager
는 Android SDK용 패키지를 보고 설치하고 업데이트하고 제거할 수 있는 명령줄 도구입니다. Android 스튜디오를 사용하는 경우 이 도구를 사용할 필요가 없으며 대신 IDE에서 SDK 패키지를 관리할 수 있습니다.
sdkmanager
도구는 Android SDK 명령줄 도구 패키지에서 제공됩니다.
SDK Manager를 사용하여 명령줄 도구 버전을 설치하려면 다음 단계를 따르세요.
- Android 스튜디오 페이지에서 최신 명령줄 도구 패키지를 다운로드하고 패키지를 추출합니다.
- 압축 해제한
cmdline-tools
디렉터리를 원하는 새 디렉터리(예: android_sdk)로 이동합니다. 이 새 디렉터리는 Android SDK 디렉터리입니다. - 압축 해제한
cmdline-tools
디렉터리에latest
라는 하위 디렉터리를 만듭니다. lib
디렉터리,bin
디렉터리,NOTICE.txt
파일,source.properties
파일을 비롯하여 원래cmdline-tools
디렉터리 콘텐츠를 새로 만든latest
디렉터리로 이동합니다. 이제 이 위치에서 명령줄 도구를 사용할 수 있습니다.(선택사항) 이전 버전의 명령줄 도구를 설치하려면 다음 명령어를 실행합니다.
android_sdk/cmdline-tools/latest/bin/sdkmanager --install "cmdline-tools;version"
version
을 설치할 버전으로 바꿉니다(예:5.0
).
사용
sdkmanager
를 사용하면 설치된 패키지 및 사용 가능한 패키지를 나열하고 패키지를 설치하고 업데이트할 수 있습니다. 자세한 내용은 다음 섹션을 참고하세요.
설치된 패키지 또는 사용 가능한 패키지 나열
설치된 패키지 및 사용 가능한 패키지를 나열하려면 다음 문법을 사용합니다.
sdkmanager --list [options] \ [--channel=channel_id] // Channels: 0 (stable), 1 (beta), 2 (dev), or 3 (canary)
channel
옵션을 사용하여 channel_id
이하 채널의 패키지를 포함합니다. 예를 들어 Canary 채널을 지정하여 모든 채널의 패키지를 나열합니다.
패키지 설치
패키지를 설치하려면 다음 문법을 사용합니다.
sdkmanager packages [options]
packages 인수는 --list
명령어에서 보이는 것과 같이 따옴표로 묶은 SDK 스타일의 경로입니다. 예를 들면 "build-tools;34.0.0"
또는 "platforms;android-33"
이 있습니다.
공백으로 구분된 여러 패키지 경로를 전달할 수 있지만 각각 자체 따옴표로 묶어야 합니다. 예를 들어 다음은 최신 플랫폼 도구 및 API 수준 33용 SDK 도구를 설치하는 방법입니다.
sdkmanager "platform-tools" "platforms;android-33"
또는 모든 패키지를 지정하는 텍스트 파일을 전달할 수 있습니다.
sdkmanager --package_file=package_file [options]
package_file 인수는 텍스트 파일의 위치입니다. 여기서 각 줄은 설치할 패키지의 SDK 스타일 경로(따옴표 없음)입니다.
제거하려면 --uninstall
플래그를 추가합니다.
sdkmanager --uninstall packages [options] sdkmanager --uninstall --package_file=package_file [options]
CMake 또는 NDK를 설치하려면 다음 문법을 사용합니다.
sdkmanager --install ["ndk;major.minor.build[suffix]" | "cmake;major.minor.micro.build"] [--channel=channel_id] // NDK channels: 0 (stable), 1 (beta), or 3 (canary)
예를 들어 다음 명령어를 사용하여 현재 사용하는 채널과 관계없이 지정된 NDK 버전을 설치합니다.
sdkmanager --install "ndk;21.3.6528147" --channel=3 // Install the NDK from the canary channel (or below) sdkmanager --install "cmake;10.24988404" // Install a specific version of CMake
설치된 모든 패키지 업데이트
설치된 모든 패키지를 업데이트하려면 다음 문법을 사용합니다.
sdkmanager --update [options]
라이선스 수락
설치한 각 패키지에 필요한 라이선스를 수락해야 합니다. 이 단계는 Android 스튜디오 내에서 패키지를 설치할 때 설치 흐름 중에 발생합니다.
Android 스튜디오가 설치되어 있지 않은 경우나 CI 서버용이거나 GUI가 설치되지 않은 다른 헤드리스 Linux 기기용이면 명령줄에서 다음을 실행하세요.
sdkmanager --licenses
그러면 아직 수락하지 않은 라이선스를 수락하라는 메시지가 표시됩니다.
옵션
다음 표에는 이전 섹션에 나열된 명령어에 사용할 수 있는 옵션이 나와 있습니다.
옵션 | 설명 |
---|---|
--sdk_root=path
|
이 도구를 포함하는 SDK 대신 지정된 SDK 경로를 사용합니다. |
--channel=channel_id
|
channel_id 이하 채널의 패키지를 포함합니다. 사용 가능한 채널은 다음과 같습니다.
|
--include_obsolete
|
사용되지 않는 패키지를 패키지 목록 또는 패키지 업데이트에 포함합니다.
--list 및 --update 에서만 사용합니다.
|
--no_https
|
모든 연결이 HTTPS가 아닌 HTTP를 사용하도록 강제합니다. |
--newer
|
--list 를 사용하여 새 패키지 또는 업데이트 가능한 패키지만 표시합니다.
|
--verbose
|
상세 출력 모드. 오류, 경고 및 정보 메시지가 출력됩니다. |
--proxy={http | socks}
|
지정된 유형의 프록시를 통해 연결합니다. HTTP 또는 FTP와 같은 높은 레벨의 프로토콜에는 http 를 사용하고, SOCKS(V4 또는 V5) 프록시에는 socks 를 사용합니다. |
--proxy_host={IP_address | DNS_address}
|
사용할 프록시의 IP 또는 DNS 주소입니다. |
--proxy_port=port_number
|
연결할 프록시 포트 번호입니다. |