Cuttlefish 是一种可配置的虚拟 Android 设备,既可以远程运行(使用第三方云产品,如 Google Cloud Engine),又可以在本地运行(在 Linux x86 和 ARM64 计算机上)。
下载依赖与安装
官方文档
https://source.android.com/docs/devices/cuttlefish/get-started?hl=zh-cn
https://source.android.com/docs/devices/cuttlefish/get-started
注意:
英文文档和中文文档有差异,使用英文文档的安装方式依赖较好的网络环境;若遇到无法下载等网络问题,可参考中文文档进行配置。
检查系统架构:
架构: x86_64
CPU 运行模式: 32-bit, 64-bit
Address sizes: 39 bits physical, 48 bits virtual
字节序: Little Endian
检查KVM支持
Cuttlefish依赖KVM,所以安装之前,需确保KVM可用。
X86
若此命令返回一个非零值,表示KVM可用。
ARM
下载及安装
配置系统镜像
Cuttlefish是Android开源项目AOSP的一部分,可以在AOSP官网下载合适的build版本。
具体下载及配置方式查看官网:
https://source.android.com/docs/devices/cuttlefish/get-started?hl=zh-cn
本文主要介绍使用AOSP源码编译出版本,然后使用CuttleFish调试的方式。
下载AOSP源码
编译源码三步走
lunch后的版本字符串的组成部分为:
这product_name是要构建的产品的名称,例如
aosp_cf_x86_64_phone
或aosp_husky
。您的具体product_name您可以遵循您自己的设备格式,但 Google 为其设备使用的格式包含以下组件:
aosp
指的是Android开源平台。(可选)
cf
当目标打算在 Cuttlefish 模拟器中运行时,包含该选项。架构和硬件(代号),例如
x86_64_phone
或husky
是 Pixel 8 pro 的代号。如需查看 Google 设备代号列表,请参阅设备代号。这release设置为
trunk_staging
。这build_variant字符串部分可以是下表中的三个值之一:
若要查看当前lunch的设置版本,可运行:
启动Cuttlefish模拟器
在经历数小时的编译之后,可使用以下命令启动模拟器
若想停止模拟器,可使用命令:
以上命令在AOSP源码根目录下执行,若报错,可先配置source/lunch等命令后再次尝试。
更多启动命令配置可查看以下文档:
正常启动Cuttlefish模拟器后,在终端会提示使用浏览器打开链接:
打开之后,将看到可用的虚拟机列表,点击左侧按钮即可启动对应版本虚拟机。
评论区
Preview: