sdkmanager
— это инструмент командной строки, который позволяет просматривать, устанавливать, обновлять и удалять пакеты для Android SDK. Если вы используете Android Studio, вам не нужно использовать этот инструмент, и вместо этого вы можете управлять своими пакетами SDK из IDE .
Инструмент sdkmanager
входит в пакет инструментов командной строки Android SDK . Чтобы использовать SDK Manager для установки версии инструментов командной строки, выполните следующие действия:
- Загрузите последнюю версию пакета инструментов командной строки со страницы Android Studio и извлеките пакет.
- Переместите разархивированный каталог
cmdline-tools
в новый каталог по вашему выбору, например android_sdk . Этот новый каталог является вашим каталогом Android SDK. - В разархивированном каталоге
cmdline-tools
создайте подкаталог с именемlatest
. - Переместите исходное содержимое каталога
cmdline-tools
, включая каталогlib
, каталогbin
, файлNOTICE.txt
и файлsource.properties
, во вновь созданный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
включительно. Например, укажите канареечный канал, чтобы получить список пакетов со всех каналов.
Установить пакеты
Для установки пакетов используйте следующий синтаксис:
sdkmanager packages [options]
Аргумент packages — это путь в стиле SDK, как показано с помощью команды --list
, заключенный в кавычки. Например, "build-tools;34.0.0"
или "platforms;android-33"
.
Вы можете передать несколько путей к пакету, разделенных пробелом, но каждый из них должен быть заключен в собственный набор кавычек. Например, вот как установить новейшие инструменты платформы и инструменты SDK для уровня API 33:
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 Studio.
Если у вас не установлена Android Studio или она предназначена для CI-сервера или другого автономного устройства Linux без установленного графического интерфейса, выполните следующие действия из командной строки:
sdkmanager --licenses
Это предложит вам принять все лицензии, которые еще не были приняты.
Параметры
В следующей таблице перечислены доступные параметры для команд, перечисленных в предыдущем разделе:
Вариант | Описание |
---|---|
--sdk_root= path | Используйте указанный путь к SDK вместо SDK, содержащего этот инструмент. |
--channel= channel_id | Включите пакеты в каналы до Channel_id включительно. Доступные каналы: |
--include_obsolete | Включите устаревшие пакеты в список пакетов или обновления пакетов. Только для использования с --list и --update . |
--no_https | Заставьте все соединения использовать HTTP, а не HTTPS. |
--newer | С помощью --list показывать только новые или обновляемые пакеты. |
--verbose | Подробный режим вывода. Распечатываются ошибки, предупреждения и информационные сообщения. |
--proxy={http | socks} | Подключитесь через прокси-сервер заданного типа: либо http для протоколов высокого уровня, таких как HTTP или FTP, либо socks для прокси-сервера SOCKS (V4 или V5). |
--proxy_host={ IP_address | DNS_address } | IP или DNS-адрес используемого прокси. |
--proxy_port= port_number | Номер порта прокси для подключения. |
sdkmanager
— это инструмент командной строки, который позволяет просматривать, устанавливать, обновлять и удалять пакеты для Android SDK. Если вы используете Android Studio, вам не нужно использовать этот инструмент, и вместо этого вы можете управлять своими пакетами SDK из IDE .
Инструмент sdkmanager
входит в пакет инструментов командной строки Android SDK . Чтобы использовать SDK Manager для установки версии инструментов командной строки, выполните следующие действия:
- Загрузите последнюю версию пакета инструментов командной строки со страницы Android Studio и извлеките пакет.
- Переместите разархивированный каталог
cmdline-tools
в новый каталог по вашему выбору, например android_sdk . Этот новый каталог является вашим каталогом Android SDK. - В разархивированном каталоге
cmdline-tools
создайте подкаталог с именемlatest
. - Переместите исходное содержимое каталога
cmdline-tools
, включая каталогlib
, каталогbin
, файлNOTICE.txt
и файлsource.properties
, во вновь созданный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
включительно. Например, укажите канареечный канал, чтобы получить список пакетов со всех каналов.
Установить пакеты
Для установки пакетов используйте следующий синтаксис:
sdkmanager packages [options]
Аргумент packages — это путь в стиле SDK, как показано с помощью команды --list
, заключенный в кавычки. Например, "build-tools;34.0.0"
или "platforms;android-33"
.
Вы можете передать несколько путей к пакету, разделенных пробелом, но каждый из них должен быть заключен в собственный набор кавычек. Например, вот как установить новейшие инструменты платформы и инструменты SDK для уровня API 33:
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 Studio.
Если у вас не установлена Android Studio или она предназначена для CI-сервера или другого автономного устройства Linux без установленного графического интерфейса, выполните следующие действия из командной строки:
sdkmanager --licenses
Это предложит вам принять все лицензии, которые еще не были приняты.
Параметры
В следующей таблице перечислены доступные параметры для команд, перечисленных в предыдущем разделе:
Вариант | Описание |
---|---|
--sdk_root= path | Используйте указанный путь к SDK вместо SDK, содержащего этот инструмент. |
--channel= channel_id | Включите пакеты в каналы до Channel_id включительно. Доступные каналы: |
--include_obsolete | Включите устаревшие пакеты в список пакетов или обновления пакетов. Только для использования с --list и --update . |
--no_https | Заставьте все соединения использовать HTTP, а не HTTPS. |
--newer | С помощью --list показывать только новые или обновляемые пакеты. |
--verbose | Подробный режим вывода. Распечатываются ошибки, предупреждения и информационные сообщения. |
--proxy={http | socks} | Подключитесь через прокси-сервер заданного типа: либо http для протоколов высокого уровня, таких как HTTP или FTP, либо socks для прокси-сервера SOCKS (V4 или V5). |
--proxy_host={ IP_address | DNS_address } | IP или DNS-адрес используемого прокси. |
--proxy_port= port_number | Номер порта прокси для подключения. |