赞
踩
本文链接: https://blog.csdn.net/xietansheng/article/details/85092056
sdkmanager
命令行工具在 Android SDK Tools(25.2.3+版本)包中提供,可以查看、安装、更新、卸载 Android SDK 的软件包。
sdkmanager
命令在 SDK 中的位置: {Android_SDK}/tools/bin/
sdkmanager 官网介绍: https://developer.android.google.cn/studio/command-line/sdkmanager
Usage:
sdkmanager --help
sdkmanager [--uninstall] [<common args>] [--package_file=<file>] [<packages>...]
sdkmanager --list [<common args>]
sdkmanager --update [<common args>]
sdkmanager --licenses [<common args>]
sdkmanager --version
查看命令:
sdkmanager --list // 列出所有 已安装的包、有效的包 和 可以更新包
命令示例:
/*
* 输如 "sdkmanager --list" 命令, 结果大致如下所示,
* 先展示已安装的包列表, 再展示所有的有效包列表(按 Path 名称排序)
* 内容非常多, 可以通过 | 管道过滤显示。
*/
xiets@ubuntu:~/android-sdk/tools/bin$ ./sdkmanager --list
Installed packages:=====================] 100% Computing updates...
Path | Version | Description | Location
------- | ------- | ------- | -------
platform-tools | 28.0.1 | Android SDK Platform-Tools | platform-tools/
platforms;android-28 | 6 | Android SDK Platform 28 | platforms/android-28/
tools | 26.1.1 | Android SDK Tools 26.1.1 | tools/
Available Packages:
Path | Version | Description
------- | ------- | -------
build-tools;28.0.3 | 28.0.3 | Android SDK Build-Tools 28.0.3
docs | 1 | Documentation for Android SDK
emulator | 28.0.20 | Android Emulator
platform-tools | 28.0.1 | Android SDK Platform-Tools
platforms;android-28 | 6 | Android SDK Platform 28
sources;android-28 | 1 | Sources for Android 28
system-images;android-28;google_apis;x86 | 7 | Google APIs Intel x86 Atom System Image
tools | 26.1.1 | Android SDK Tools
...
Available Updates:
ID | Installed | Available
------- | ------- | -------
emulator | 28.0.22 | 28.0.23
ndk-bundle | 19.0.5232133 | 19.1.5304403
安装命令:
sdkmanager <packages>
其中packages
参数为软件包的Path
名称,即通过sdkmanager --list
命令查看的列表中的Path
名称,packages
参数 必需要使用引号引起来,可同时添加多个packages
参数同时安装多个包(多个包之间用空格隔开,并各自使用引号引起来)。
命令示例:
// 安装平台工具包(adb 和 fastboot 命令的包)
sdkmanager "platform-tools"
// 同时安装多个包
sdkmanager "platform-tools" "build-tools;28.0.3" "platforms;android-28"
更新命令:
sdkmanager --update // 更新所有已安装的软件包
卸载命令:
sdkmanager --uninstall <packages>
命令示例:
// 卸载单个软件包
sdkmanager --uninstall "build-tools;28.0.0"
// 同时卸载多个包
sdkmanager --uninstall "build-tools;28.0.0" "platforms;android-26"
上述命令均可添加若干个额外的可用选项参数:
--sdk_root=<path> // 使用指定的 SDK 路径, 而不是当前 sdkmanager 命令
// 的 tools 包所在的 SDK 路径
--channel=<channel_id> // 包含软件包的更新渠道, channel_id: 0 (Stable),
// 1 (Beta), 2 (Dev), 3 (Canary)
--include_obsolete // 包含过时的软件包, 只对 --list 和 --update 命令有效
--no_https // 所有链接强制使用 HTTP, 而不是 HTTPS
--verbose // 详细输出模式, 输出 Error, Warn, Info 级别的消息
--proxy=<http|socks> // 指定代理的 协议
--proxy_host=<IP_address|DNS_address> // 指定代理的 IP地址 或 DNS地址
--proxy_port=<port_number> // 指定代理的 端口号
命令格式:
sdkmanager [--list|--update|--uninstall] [packages] [options]
命令示例:
// 列出所有已安装和有效的包, 并且包含过时的包, 并且详细输出日志
sdkmanager --list --include_obsolete --verbose
如果你希望在当前系统平台下载安装其他系统平台的 Android SDK 软件包,可以设置一个REPO_OS_OVERRIDE
环境变量,指定需要下载的系统平台("windows"
, "macosx"
, or "linux"
)对应的软件包。
例如在macosx
系统上,下载安装windows
系统 Android SDK 对应的platform-tools
软件包,命令如下:
# 先临时设置需要下载的平台的环境变量
export REPO_OS_OVERRIDE="windows"
# 下载 Windows 系统 Android SDK 对应的 platform-tools 软件包
# 跨平台下载需要使用 --sdk_root 指定下载保存的目录(避免和当前系统的 SDK 软件包混淆)
sdkmanager "platform-tools" --sdk_root=/Users/<UserName>/android-win
下载完成后查看,可以看到命令文件均是 Windows 系统的 exe 文件:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。