创建安卓模拟器

概述

最近开发中,每每需要测试程序的时候都是用usb数据线连接手机进行,有点麻烦了,所以打算使用模拟器替代手机硬件。

配置流程

安卓模拟器的配置主要就是sdk和配套工具。

  1. 下载Android sdk工具,解压缩到$HOME/Android/sdk/
    确保android命令在$HOME/Android/sdk/tools/下面
  2. 下载flutter sdk,同样放在$HOME/Android/sdk/下面
  3. 设置环境变量
vim ~/.profile
export ANDROID_SDK_ROOT="${HOME}/Android/sdk"
export PATH="${PATH}:${HOME}/bin:${ANDROID_SDK_ROOT}/flutter/bin:${ANDROID_SDK_ROOT}/tools/bin/:${ANDROID_SDK_ROOT}/emulator/"
  1. 加载 $HOME/.profile
source ~/.profile
  1. 通过sdkmanager 命令,下载必要组件
# 平台工具 adb 等等
sdkmanager platform-tools 

# 系统镜像 为后续创建模拟器准备
sdkmanager "system-images;android-28;default;x86_64"

# avd模拟器相关
sdkmanager emulator

# sdk 需要对应API版本
sdkmanager "platforms;android-28" "build-tools;28.0.3"
  1. 运行flutter doctor命令检测flutter的运行环境,确保android sdk已安装。

  2. 创建模拟器

avdmanager create avd --name emulator1 --package "system-images;android-28;default;x86_64"
  1. 运行模拟器
emulator -avd emulator1
# 等效于
# emulator @emulator1

只要刚开始sdk工具(sdkmanager)路径配置正确,后续的平台工具、sdk都能通过sdkmanager命令自动安装到正确位置。

查看可用镜像列表

sdkmanager --list

其他操作

删除模拟器

avdmanager delete avd -n emulator1

删除模拟器emulator1

常见问题

Warning: Could not create settings

执行sdkmanager命令提示如上错误,是由于sdkmanager命令的父目录名称结构不正确
正确的目录结构:cmdline-tools/tools/bin/sdkmanager
最后的sdkmanager是可执行程序,可以参考链接
还有另外一个讨论

API与Android版本对照表

APILevel 最初Android版本 Linux内核版本 首次发布日期 后续Android版本
29 10 Unknown 2019-06-05(Beta4) -
28 9 4.4.107,4.9.84 2018-08-06
,and4.14.42
27 8.1 4.10 2017-12-05
26 8.0 4.10 2017-08-21
25 7.1 4.4.1 2016-10-04 7.1.1、7.1.2
24 7.0 4.4.1 2016-08-22
23 6.0 3.18.10 2015-10-05 6.0.1
22 5.1 3.16.1 2015-03-09 5.1.1
21 5.0 3.16.1 2014-11-12 5.0.1、5.0.2
20 4.4w 3.10 2014-06-25 4.4w.1、4.4w.2
19 4.4 3.10 2013-10-31 4.4.1、4.4.2、4.4.3、4.4.4
18 4.3 3.4.0 2013-07-24 4.3.1
17 4.2 3.4.0 2012-11-13 4.2.1、4.2.2
16 4.1 3.0.31 2012-07-09 4.1.1、4.1.2
15 4.0.3 3.0.1 2011-12-16 4.0.4
14 4.0 3.0.1 2011-10-18 4.0.1、4.0.2
13 3.2 2.6.36 2011-07-15 3.2.1、3.2.2、3.2.3、
3.2.4、3.2.5、3.2.6
12 3.1 2.6.36 2011-05-10
11 3.0 2.6.36 2011-02-22
10 2.3.3 2.6.35 2011-02-09 2.3.4、2.3.5、2.3.6、2.3.7
9 2.3 2.6.35 2010-12-06 2.3.1、2.3.2
8 2.2 2.6.32 2010-05-20 2.2.1、2.2.2、2.2.3
7 2.1 2.6.29 2010-01-12
6 2.0.1 2.6.29 2009-12-03
5 2.0 2.6.29 2009-10-26
4 1.6 2.6.29 2009-09-15
3 1.5 2.6.27 2009-04-27
2 1.1 2.6.X 2009-02-09
1 1.0 - 2008-09-23

相关链接

vscode安装安卓模拟器
命令行安装模拟器
sdkmanager
avdmanager
Android SDK Tools