遇到老版安装程序不兼容是挺绕人的,不过换成 sdkmanager 确实就一劳永逸了。它的核心用法很简单,主要是先用 --list 看有哪些包可以装,再用安装命令指定包名就行。具体操作步骤如下:
📝 准备工作:下载与初始化配置
- 下载命令行工具 :访问 Android 开发者官网,下载 Windows 版本的"Command line tools only"压缩包。
- 创建SDK根目录 :在电脑上创建一个新文件夹作为SDK根目录,例如
C:\Android\android_sdk。 - 解压并配置目录(关键步骤) :
- 把下载的压缩包解压,会得到一个名为
cmdline-tools的文件夹。 - 在
cmdline-tools文件夹里面 ,再新建一个名为latest的子文件夹。 - 把
cmdline-tools里除了latest以外的所有文件和文件夹(如bin,lib,NOTICE.txt等),全部剪切 到刚新建的latest文件夹里。 - 最后,把整个
cmdline-tools文件夹复制到你创建的SDK根目录(例如C:\Android\android_sdk)。最终路径结构应为C:\Android\android_sdk\cmdline-tools\latest\bin\sdkmanager.bat。
- 把下载的压缩包解压,会得到一个名为
⌨️ 实战:使用 sdkmanager.bat 安装组件
1. 验证安装并查看可用包
打开命令行(CMD),先切换到 sdkmanager.bat 所在的目录,再执行相关命令。
cmd
:: 切换到 sdkmanager.bat 所在目录
cd C:\Android\android_sdk\cmdline-tools\latest\bin
:: 列出所有可安装的包
sdkmanager --list
执行后,屏幕会打印出所有可用的软件包列表,下一步就需要用到这里的包名。
2. 安装核心组件(基础三件套)
基础开发至少需要安装 platform-tools(含ADB)、build-tools 和某个版本的 platforms(Android平台)。命令如下:
cmd
:: 安装最新的平台工具(包含 adb, fastboot 等)
sdkmanager "platform-tools"
:: 安装构建工具(把 "X.Y.Z" 替换成你需要的版本号,如 35.0.0)
sdkmanager "build-tools;X.Y.Z"
:: 安装特定版本的 Android 平台(把 "ZZ" 替换成需要的 API 级别,如 33)
sdkmanager "platforms;android-ZZ"
高效方法 :可以把要装的包名写进一个文本文件(如
packages.txt,一行一个),然后用sdkmanager --package_file=packages.txt批量安装。
3. 通用安装命令
基本格式为:
cmd
sdkmanager [options] "包名1" "包名2" ...
常用选项有 --list(列出包)、--update(更新已安装包)和 --uninstall(卸载)。如果连接到一些旧源或网络受限,可能需要带上 --no_https 选项。
⚙️ 进阶:配置环境变量
为了方便在任意路径下使用 adb、sdkmanager 等工具,建议将它们的路径添加到 Windows 环境变量中。
-
新建用户变量:
- 变量名:
ANDROID_SDK_ROOT - 变量值:
C:\Android\android_sdk(你的SDK根目录)
- 变量名:
-
编辑系统 Path 变量 :在已有的
Path变量中新建两行:%ANDROID_SDK_ROOT%\cmdline-tools\latest\bin%ANDROID_SDK_ROOT%\platform-tools
💎 一个完整的安装示例
结合以上步骤,假设需要为 API 33 的项目构建环境,可以连续执行下面的命令:
cmd
:: 1. 切换到 sdkmanager 所在目录
cd C:\Android\android_sdk\cmdline-tools\latest\bin
:: 2. 安装指定版本的平台和构建工具
sdkmanager "platform-tools" "platforms;android-33" "build-tools;33.0.0"
:: 3. 等命令跑完,可以在 SDK 根目录看到新文件夹
dir C:\Android\android_sdk
💡 安装完成后,如何让图片中的程序识别SDK?
用 sdkmanager 安装好新版 SDK 后,回头再看那张报错图片,它大概率是某个依赖特定 Android SDK 老版本的游戏引擎(如 Unity/Unreal)自带的安装器。你可以在它的安装目录里找到类似 SetupAndroid.bat 的脚本,用记事本打开后,找到 sdkmanager.bat 的调用路径,并将其修改为你刚才设置的新路径,最后以管理员身份运行这个脚本即可。
💡 补充说明:如何彻底解决 JDK 不被识别的问题?
虽然改用 sdkmanager 绕开了老款安装器,但如果在后续开发中再次遇到"找不到 JDK"这类问题,可以参考下面的方法彻底解决:
- 核对 JAVA_HOME 地址是否准确 :
JAVA_HOME变量需指向 JDK 根目录 (而不是包含java.exe的bin目录)。你可以打开 CMD 执行dir "%JAVA_HOME%\bin\java.exe",如果能找到文件则说明配置正确。 - 检查依赖方对 JDK 的版本是否有要求 :部分老旧的工具(如早年的 Eclipse ADT 或老牌游戏引擎的打包工具)可能只兼容 32 位 JDK 。如果
java -version显示为 64-bit,你可能需要再安装一个 32 位 JDK 版本。
💎 总结
使用 sdkmanager 安装 Android SDK 的核心流程就是:下载解压 -> 创建 latest 目录并挪动文件 -> 用 --list 查包名 -> 最后用 sdkmanager "包名" 安装指定组件。如果你在安装过程中遇到具体问题,可以告诉我具体的报错信息,我再帮你看看。