测试人社区

专项工具——sdkmanager

sdkmanager

sdkmanager 是一个命令行工具,您可以用它来查看、安装、更新和卸载 Android SDK 的软件包。如果您使用 Android Studio,则无需使用此工具,而可以从 IDE 管理 SDK 软件包

sdkmanager 工具在 Android SDK Tools 软件包(25.2.3 及更高版本)中提供,并位于 android_sdk/tools/bin/ 下。

用法

您可以使用 sdkmanager 执行以下任务。

列出已安装和可用的软件包

sdkmanager --list [options]

安装软件包

sdkmanager packages [options]

packages 参数是 --list 命令列出的 SDK 式的路径,这些路径括在引号中(例如 "build-tools;29.0.2""platforms;android-28" )。您可以传递多个软件包路径(用空格分隔),但各个路径必须括在各自的一组引号中。

例如,下面展示了如何安装最新的平台工具(包括 adbfastboot )以及适用于 API 级别 28 的 SDK 工具:

sdkmanager "platform-tools" "platforms;android-28"
    

或者,您也可以传递一个指定了所有软件包的文本文件:

sdkmanager --package_file=package_file [options]

package_file 参数指定了文本文件所在的位置,该文件中的每一行都代表一个要安装的软件包的 SDK 样式路径(不带引号)。

要卸载软件包,只需添加 --uninstall 标记:

sdkmanager --uninstall packages [options] 
sdkmanager --uninstall --package_file=package_file [options]

更新所有已安装的软件包

sdkmanager --update [options]

选项

下表列出了上述命令的可用选项。

选项 说明
--sdk_root=path 使用指定的 SDK 路径而不是包含此工具的 SDK
--channel=channel_id 包含从 channel_0 到 channel_id 所有渠道中的软件包。可用的渠道包括:
0 (稳定版)、 1 (测试版)、 2 (开发版)和 3 (Canary 版)。
--include_obsolete 在列出或更新软件包时纳入那些已过时的软件包。仅适用于 --list--update
--no_https 强制所有连接使用 HTTP 而不是 HTTPS。
--verbose 详细输出模式。该模式会输出错误、警告和参考性消息。
--proxy={http | socks} 通过给定类型的代理建立连接:用 http 指定一个高层级协议(如 HTTP 或 FTP)的代理,或用 socks 指定一个 SOCKS(V4 或 V5)代理。
--proxy_host={IP_address | DNS_address} 要使用的代理的 IP 或 DNS 地址。
--proxy_port=port_number 要连接到的代理端口号。

注意 :如果要为与当前计算机不同的操作系统安装软件包,请将 REPO_OS_OVERRIDE 环境变量设置为“windows”、“macosx”或“linux”。

转载自:https://developer.android.com/studio/command-line/sdkmanager?hl=zh-cn