Android SDK 可以通过 Android Command line tools(叫命令行工具或 SDK 工具)手动安装,也可以让 Android Studio 自动帮你下载安装,这里详细描述手动安装的方法。

1. 下载 zip 安装包

Windows 选择 commandlinetools-win-6609375_latest.zip

macOS 选择 commandlinetools-mac-6609375_latest.zip

Linux 选择 commandlinetools-linux-6609375_latest.zip

以下以 Windows 平台为例,其它平台基本一致!

2. 解压安装

将下载的 commandlinetools-win-6609375_latest.zip 安装包解压,解压后目录结构如下:

D:\path-to\android-sdk\ # 按需自行调整安装到的目录

└── tools

├── bin

│ ├── apkanalyzer.bat # 用于在构建过程完成后深入分析 APK 组成

│ ├── avdmanager.bat # 创建和管理 Android 虚拟设备 (AVD)

│ ├── lint.bat # 代码扫描工具,可帮助您识别和纠正代码结构质量方面的问题

│ ├── screenshot2.bat

│ └── sdkmanager.bat # 查看、安装、更新和卸载 Android SDK 的软件包

├── lib

│ └── ...

├── NOTICE.txt

├── package.xml

└── source.properties

切换到命令行执行如下命令安装最新版的 cmdline-tools:

> cd D:\path-to\android-sdk\tools\bin

> sdkmanager --sdk_root=D:\path-to\android-sdk\ "cmdline-tools;latest"

License android-sdk-license: ] 10% Computing updates...

---------------------------------------

...

---------------------------------------

Accept? (y/N): y # 输入 y 接受 License

[====== ] 17% Downloading commandlinetools-win-6

[=======================================] 100% Unzipping... tools/lib/README

参数 --sdk_root=D:\path-to\android-sdk\ 是非常关键的,必须精确指定。命令执行完毕后,将会新增如下目录:

D:\path-to\android-sdk\

├── cmdline-tools\latest\

│ ├── bin

│ │ ├── apkanalyzer.bat

│ │ ├── avdmanager.bat

│ │ ├── lint.bat

│ │ ├── screenshot2.bat

│ │ └── sdkmanager.bat

│ ├── lib

│ │ └── ...

│ ├── NOTICE.txt

│ ├── package.xml

│ └── source.properties

└── licenses

└── android-sdk-license

android-sdk\cmdline-tools\latest 就是最新版的命令行工具,对!没有看错,它其实就是 android-sdk\tools 的最新版。此时 android-sdk\tools 目录也可以删除掉不再需要,或者留着以后用来更新 cmdline-tools。

3. 安装必须的 SDK 包

# 切换到新的 cmdline-tools 目录

$ cd android-sdk\cmdline-tools\latest

# 安装模拟器命令行工具

$ sdkmanager --install "emulator"

# 安装 platform-tools

$ sdkmanager --install "platform-tools"

4. 配置系统环境变量

创建系统环境变量 ANDROID_SDK_ROOT,指向上面的目录 D:\path-to\android-sdk\。

将 $ANDROID_SDK_ROOT\cmdline-tools\latest\bin 添加到系统环境变量 Path,使命令行可以直接执行 sdkmanager、avdmanager 命令。

将 $ANDROID_SDK_ROOT\emulator 添加到系统环境变量 Path,使命令行可以直接执行 emulator 命令。

将 $ANDROID_SDK_ROOT\platform-tools 添加到系统环境变量 Path,使命令行可以直接执行 adb、fastboot 命令。

创建系统环境变量 ANDROID_SDK_HOME,将默认的 $USER_HOME\.android 目录指向其它分区位置,如 D:\data\_android\ - 这是可选配置,但强烈建议设置一下。

创建系统环境变量 ANDROID_AVD_HOME,将默认的 $USER_HOME\.android\avd 目录指向其它分区位置,如 D:\data\_android\avd - 这是可选配置,但强烈建议设置一下。如果设置了 ANDROID_SDK_HOME 则必须设置这个,否则会创建模拟器成功,但启动模拟器说找不到路径。

更多 Android 环境变量的配置,请参考 官方文档的环境变量配置。

配置完毕后,在任意目录重新打开新的 CMD 命令行,确认一下配置的正确性:

$ sdkmanager --version

4.0.1

$ emulator -version

Android emulator version 30.0.12.0 (build_id 6466327) (CL:N/A)

...

$ adb version

Android Debug Bridge version 1.0.41

Version 30.0.4-6686687

Installed as ...

$ fastboot --version

fastboot version 30.0.4-6686687

Installed as ...

看到上述输出的版本号信息就证明配置成功。

注意:如果不是将 cmdline-tools\latest\bin 而是直接将 tools\bin 添加到系统环境变量 Path,当执行 'sdkmanager --version' 命令时是会报如下错误的:

Warning: Could not create settings

java.lang.IllegalArgumentException

at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.(SdkManagerCliSettings.java:428)

at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.createSettings(SdkManagerCliSettings.java:152)

...

5. SDK 包的安装、更新与删除

命令行执行 "sdkmanager --list" 可以查看到所有已安装、可安装、可更新的包。如:

$ sdkmanager --list

Installed packages:=====================] 100% Computing updates...

Path | Version | Description | Location

------- | ------- | ------- | -------

cmdline-tools;latest | 2.1 | Android SDK Command-line Tools (latest) | cmdline-tools/latest/

platforms;android-30 | 2 | Android SDK Platform 30 | platforms/android-30/

...

Available Packages:

Path | Version | Description

------- | ------- | -------

build-tools;30.0.2 | 30.0.2 | Android SDK Build-Tools 30.0.2

...

Available Updates:

ID | Installed | Available

------- | ------- | -------

platforms;android-30 | 2 | 3

安装新包:

# --install 参数是可选的

$ sdkmanager --install "$PACKAGE_PATH" # 上面 `Available Packages` 中第一列 Path 的值就是 $PACKAGE_PATH

安装过程其实是 sdkmanager 通过网络下载相应包的压缩包,然后解压到相应的目录而已。故也可以从其它已经下载的电脑上复制过来,放到相应的目录即可。

更新已安装的包:

$ sdkmanager --update # 所有已安装的包如果有更新将全部更新到最新版

卸载已安装的包:

$ sdkmanager --uninstall "$PACKAGE_NAME"

自行将相应包所在的目录删除掉也可达到卸载的目的,效果是一样的。

有一些网站缓存了一些 SDK 的压缩包,直接下载有困难时可以灵活变通一下,自行从这些网站下载,然后解压到相应的 SDK 包目录即可:

6. 模拟器硬件加速配置

从实用角度,这里简化挑选了 Intel CPU 和 AMD CPU 平台在 Windows 下的硬件加速方法。

只有安装了硬件加速,运行 x86 的模拟器时才能提高速度,否则会很慢。

6.1. Intel CPU 的模拟器硬件加速

Intel CPU 平台是使用 Intel HAXM 配置虚拟机加速的,操作步骤为:

主板 BIOS 需启用 CPU 的虚拟化支持(Intel 处理器的 VT-x 技术)。

执行如下命令下载 Intel HAXM:

$ sdkmanager --install "extras;intel;Hardware_Accelerated_Execution_Manager"

运行刚下载的 "sdk\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm-android.exe" 文件,按向导完成安装。

验证安装:

$ sc query intelhaxm

SERVICE_NAME: intelhaxm

...

STATE : 4 RUNNING

...

如果使用 Android Studio,则只需打开 SDK 管理器,点击 "SDK Update Sites" 标签,然后选择 "Intel HAXM",点击 "OK" 等待下载完成。然后运行 "sdk\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm-android.exe" 文件,按向导完成安装。

6.2. AMD CPU 的模拟器硬件加速

主板 BIOS 需启用 CPU 的虚拟化支持(AMD 处理器的 Secure Virtual Machine (SVM) 技术)。

从 Android Emulator Hypervisor Driver for AMD Processors 的 Github 发布地址 下载最新版的压缩包,如 gvm-windows_v1_6_0.zip。

解压 gvm-windows_v1_6_0.zip 文件后,以管理员身份执行其中的 silent_install.bat 即可。

# 1. 安装

$ silent_install.bat

SERVICE_NAME: gvm

TYPE : 1 KERNEL_DRIVER

STATE : 4 RUNNING

(STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)

WIN32_EXIT_CODE : 0 (0x0)

SERVICE_EXIT_CODE : 0 (0x0)

CHECKPOINT : 0x0

WAIT_HINT : 0x0

PID : 0

FLAGS :

# 2. 验证1

$ sc query gvm

SERVICE_NAME: gvm

TYPE : 1 KERNEL_DRIVER

STATE : 4 RUNNING

(STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)

WIN32_EXIT_CODE : 0 (0x0)

SERVICE_EXIT_CODE : 0 (0x0)

CHECKPOINT : 0x0

WAIT_HINT : 0x0

# 3. 验证2

$ emulator -accel-check

accel:

0

GVM (version 1.6) is installed and usable.

accel

看到上面的信息就安装成功了,如果要卸载,则在关闭所有 x86 模拟器后,执行如下命令:

$ sc stop gvm

$ sc delete gvm

如果使用 Android Studio,则只需打开 SDK 管理器,点击 "SDK Tools" 标签页,然后选择 "Android Emulator Hypervisor Driver for AMD Processors",点击 "OK" 即可自动下载安装。

7. 创建并运行一个模拟器的例子

以 Android-8.1(API Level 27)开发为例。

7.1. 安装 Android-8.1 编译构建工具

$ sdkmanager --install "build-tools;27.0.3" "platforms;android-27"

完成后,会多出如下两个目录:

$ANDROID_SDK_ROOT\build-tools\27.0.3\

$ANDROID_SDK_ROOT\platforms\android-27\

7.2. 安装 Android-8.1 模拟器镜像

下载一个 Android-8.1 的 x86 64 位模拟器镜像:

$ sdkmanager --install "system-images;android-27;default;x86_64"

完成后,会多出如下目录:

$ANDROID_SDK_ROOT\system-images\android-27\default\x86_64\

7.3. 创建 Android-8.1 模拟器

使用上面下载的镜像创建一个模拟器:

$ avdmanager create avd --name API_27_x86_64 --package "system-images;android-27;default;x86_64"

Do you wish to create a custom hardware profile? [no]

也可以使用简写参数 -n 代替 --name、 -k 代替 --package,如:

$ avdmanager create avd -n API_27_x86_64 -k "system-images;android-27;default;x86_64"

完成后,会多出所创建的模拟器对应的配置文件和目录:

$ANDROID_AVD_HOME\API_27_x86_64.ini - 模拟器配置文件

$ANDROID_AVD_HOME\API_27_x86_64.avd\ - 模拟器磁盘镜像等文件所在的目录

创建后可以通过如下命令查看已创建的模拟器信息:

$ avdmanager list avd

Available Android Virtual Devices:

Name: API_27_x86_64

Path: D:\data\_android\avd\API_27_x86_64.avd

Target: Default Android System Image

Based on: Android 8.1 (Oreo) Tag/ABI: default/x86_64

Sdcard: 512 MB

7.4. 运行 Android-8.1 模拟器

# 命令格式为 'emulator -avd $AVD_NAME' 或 '$ emulator @AVD_NAME'

$ emulator -avd API_27_x86_64

...

如果没有配置 x86 模拟器的硬件加速,可能会启动失败。启动后,这个模拟器的界面效果如下:

android-emulator-api27.png

运行android sdk管理器,Android SDK 安装配置相关推荐

  1. android fragment 管理器,Android Fragment 與 Fragment管理器

    Android Fragment 與 Fragment管理器 首先談談Fragement的需求 過去開發人員認為界面之間的跳轉只需要使用多個activity組成就行了: 例如下圖中,在Activity ...

  2. android活动管理器,Android 中管理所有的 Acyivity 活动

    我们在 App 中,通常会打开很多个任务栈,如果我们要退出 App,要点击返回键一步步的退出?有没有更简单的方法吗?答案是有的,我们创建一个 Activity 管理器,来统一管理 Activity. ...

  3. android 事件管理器,Android输入管理InputManager之读一次事件的流程

    流程图如下所示: 读一次事件的流程.png 读取线程InputReaderThread执行InputReader#loopOnce一次 void InputReader::loopOnce() { i ...

  4. android 铃声管理器,android RingtoneManager 铃声管理器

    获取默认铃声Uri/ Uri String Uri sound = RingtoneManager.getDefaultUri(type); (type = RingtoneManager.TYPE_ ...

  5. android sdk是灰的,Android Studio 2.3 sdk管理器标签灰显

    Android Studio 2.3 - >配置 - > SDK管理器. 这些选项卡呈灰色显示: SDK工具,SDK更新站点.此外,"Show Package Details&q ...

  6. android sdk无法启动不了,无法启动Android SDK管理器

    我无法启动android sdk管理器,我已经正确检查了sdk,jdk路径但无法解决此问题.当我开始在eclipse CONSOL Android SDK中管理器显示这些行:无法启动Android S ...

  7. android 固件管理器,刷机精灵(原Android固件管理器桌面版)

    详细介绍 刷机精灵的前身是固件管理器桌面版.目前刷机精灵已全面重写,它将是一个更为温馨易用和强大的刷机工具.待近期开发完毕后即可开始发布测试,届时希望各位机友持续给力哦! 刷机精灵是一款运行于PC端的 ...

  8. 移动开发技术(Android)——实验2 Android布局管理器的应用

    移动开发技术(Android)--实验2 Android布局管理器的应用 一.实验目的 二.实验内容 (一)创建一个Android项目,名称为"shiyan0201_专业_×××" ...

  9. Dots - 更友好的 .NET SDK 管理器

    你好,这里是 Dotnet 工具箱,定期分享 Dotnet 有趣,实用的工具和组件,希望对您有用! 什么是 Dots? Dots 是一个用于管理 .NET SDK 的 GUI 工具,它使用 .NET ...

最新文章

  1. Uva10191 复合词
  2. Linux free -m命令查看内存使用情况
  3. matlab三维feather,matlab高维图形,别地方抄来的
  4. Ceph Luminous安装指南
  5. /dev/zero和/dev/null的区别
  6. 小皮面板有php环境吗,体验phpStudy小皮面板创建LAMP/LNMP系统和建站图文
  7. cartographer attempt to index global ‘SPARSE_POSE_GRAPH‘ (a nil value)
  8. android 预约挂号代码_还在医院苦苦排队挂号?Python定时自动挂号和快捷查询化验报告!...
  9. 【笔记】(python)写入文件:写入空文件、写入多行、附加到文件
  10. NC气象文件转TIF影像小工具开发(PyQt5 开发)
  11. android toast显示时间,Android Toast自定义显示时间
  12. 剑侠 java_独孤求败-剑侠情缘
  13. java推箱子图片素材下载_推箱子游戏素材 箱子图 背景图 人物图
  14. YouTorrent - 全新的“实时”BT种子搜索站
  15. Java设计模式之《装饰器模式》及应用场景
  16. 复杂事件处理(CEP)的理解(上)
  17. 经典问题----倒水(详细解析)
  18. 360竞价推广如何获得优质的关键词?
  19. JAVA 类的继承(私有属性、自动转型)(入门级小白一看就懂)
  20. OneHZ Math of Rapid Calculation

热门文章

  1. linux下unzip解压到指定目录,linux解压缩unzip命令详解
  2. HIVE 窗口函数和分析函数
  3. 基于ssm高校毕业生实习管理系统
  4. Mac下使用XMPP即时通讯【2】:安装XMPP和Spark
  5. python批量下载色影无忌和蜂鸟的图片 爬虫小应用
  6. 写作英语邮件最实用的100个句型
  7. php文件导入studio,Zend Studio导入PHP项目教程
  8. 如何保障地铁站运营安全?预警设备故障,教你一招
  9. 回文字符串——Python
  10. 数据结构——链表面试题