使用Android 模拟器运行自定义Rom
运行编译过的android源码最简单的方式是在编译完成后直接执行emulator。
但是,一般情况下我们都在服务器编译源码,或者在另外一台机器上编译出来 iso文件。
这种情况我们需要手动设置一下avd 使其能够在虚拟机上运行。具体步骤如下(以windows为例):
1.打开命令行切换到android sdk目录下的tools 目录:
执行 android list 命令
可以看到列出了很多target, 其实这些target 都是你的sdk 下载过的,如果没有你要编译的目标,可以更新一下sdk。
---------- id: 5 or "android-21" Name: Android 5.0.1 Type: Platform API level: 21 Revision: 2 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W XGA720, WXGA800, WXGA800-7in Tag/ABIs : no ABIs. ---------- id: 6 or "android-22" Name: Android 5.1.1 Type: Platform API level: 22 Revision: 2 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W XGA720, WXGA800, WXGA800-7in Tag/ABIs : default/armeabi-v7a, default/x86 ---------- id: 7 or "android-23" Name: Android 6.0 Type: Platform API level: 23 Revision: 3 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W XGA720, WXGA800, WXGA800-7in Tag/ABIs : android-tv/armeabi-v7a, android-tv/x86, default/armeabi-v7a, default /x86, default/x86_64 ---------- id: 8 or "android-N" Name: Android N (Preview) Type: Platform API level: N Revision: 2 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, W XGA720, WXGA800, WXGA800-7in Tag/ABIs : no ABIs.
2.选择编译目标
这里以android 5.1.1 为例,执行以下命令
android create avd -n NameOfEmualtor -t 6 --abi default/armeabi-v7a
NameOfEmulator 可以自己定义,就是模拟器名字,-t 后面是编译目标的 ID ,--abi 编译的abi 列出的target里有显示。
接下来会提示你创建profile,可以先忽略
3.拷贝系统镜像
第二步执行完成之后,在你的用户目录下 .android/avd 文件夹下会生成一个 刚才 模拟器名字.avd 的文件夹。
拷贝所有的镜像文件到这个文件夹
4. 执行
emulator -avd NameOfEmulator
此时模拟器应该会正常启动,并且在AVD Manager 也可以使用你的自定义模拟器。