运行android sdk管理器,Android SDK 安装配置
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 安装配置相关推荐
- android fragment 管理器,Android Fragment 與 Fragment管理器
Android Fragment 與 Fragment管理器 首先談談Fragement的需求 過去開發人員認為界面之間的跳轉只需要使用多個activity組成就行了: 例如下圖中,在Activity ...
- android活动管理器,Android 中管理所有的 Acyivity 活动
我们在 App 中,通常会打开很多个任务栈,如果我们要退出 App,要点击返回键一步步的退出?有没有更简单的方法吗?答案是有的,我们创建一个 Activity 管理器,来统一管理 Activity. ...
- android 事件管理器,Android输入管理InputManager之读一次事件的流程
流程图如下所示: 读一次事件的流程.png 读取线程InputReaderThread执行InputReader#loopOnce一次 void InputReader::loopOnce() { i ...
- android 铃声管理器,android RingtoneManager 铃声管理器
获取默认铃声Uri/ Uri String Uri sound = RingtoneManager.getDefaultUri(type); (type = RingtoneManager.TYPE_ ...
- android sdk是灰的,Android Studio 2.3 sdk管理器标签灰显
Android Studio 2.3 - >配置 - > SDK管理器. 这些选项卡呈灰色显示: SDK工具,SDK更新站点.此外,"Show Package Details&q ...
- android sdk无法启动不了,无法启动Android SDK管理器
我无法启动android sdk管理器,我已经正确检查了sdk,jdk路径但无法解决此问题.当我开始在eclipse CONSOL Android SDK中管理器显示这些行:无法启动Android S ...
- android 固件管理器,刷机精灵(原Android固件管理器桌面版)
详细介绍 刷机精灵的前身是固件管理器桌面版.目前刷机精灵已全面重写,它将是一个更为温馨易用和强大的刷机工具.待近期开发完毕后即可开始发布测试,届时希望各位机友持续给力哦! 刷机精灵是一款运行于PC端的 ...
- 移动开发技术(Android)——实验2 Android布局管理器的应用
移动开发技术(Android)--实验2 Android布局管理器的应用 一.实验目的 二.实验内容 (一)创建一个Android项目,名称为"shiyan0201_专业_×××" ...
- Dots - 更友好的 .NET SDK 管理器
你好,这里是 Dotnet 工具箱,定期分享 Dotnet 有趣,实用的工具和组件,希望对您有用! 什么是 Dots? Dots 是一个用于管理 .NET SDK 的 GUI 工具,它使用 .NET ...
最新文章
- Uva10191 复合词
- Linux free -m命令查看内存使用情况
- matlab三维feather,matlab高维图形,别地方抄来的
- Ceph Luminous安装指南
- /dev/zero和/dev/null的区别
- 小皮面板有php环境吗,体验phpStudy小皮面板创建LAMP/LNMP系统和建站图文
- cartographer attempt to index global ‘SPARSE_POSE_GRAPH‘ (a nil value)
- android 预约挂号代码_还在医院苦苦排队挂号?Python定时自动挂号和快捷查询化验报告!...
- 【笔记】(python)写入文件:写入空文件、写入多行、附加到文件
- NC气象文件转TIF影像小工具开发(PyQt5 开发)
- android toast显示时间,Android Toast自定义显示时间
- 剑侠 java_独孤求败-剑侠情缘
- java推箱子图片素材下载_推箱子游戏素材 箱子图 背景图 人物图
- YouTorrent - 全新的“实时”BT种子搜索站
- Java设计模式之《装饰器模式》及应用场景
- 复杂事件处理(CEP)的理解(上)
- 经典问题----倒水(详细解析)
- 360竞价推广如何获得优质的关键词?
- JAVA 类的继承(私有属性、自动转型)(入门级小白一看就懂)
- OneHZ Math of Rapid Calculation