news 2026/11/4 15:34:13

Waydroid 3 步跑通:Linux 容器启动 Android

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Waydroid 3 步跑通:Linux 容器启动 Android

Waydroid 3 步跑通:Linux 容器启动 Android

【免费下载链接】waydroidWaydroid uses a container-based approach to boot a full Android system on a regular GNU/Linux system like Ubuntu.项目地址: https://gitcode.com/gh_mirrors/wa/waydroid

Waydroid 用容器在普通 Linux 桌面上拉起一套完整的 Android 系统,应用装完即用,不用虚拟机也不用双系统。镜像环节(下载、校验、解压)是新手最容易卡住的地方,这篇文章带你走通安装、镜像初始化、会话启动三步,把 Waydroid 部署一次做对。

动手前,把这几项对齐

项目要求为什么
桌面环境Wayland 合成器(Gnome、KDE 等),X11 不行Android 的 UI 帧直接经 Wayland 协议传回宿主窗口
内核版本5.10 及以上与宿主通信依赖已合入主线内核的 binder/ashmem 驱动
磁盘空间至少留 2GB镜像包默认解压到/var/lib/waydroid/images,还有 overlay 和 data 目录
CPU 架构x86_64 或 arm64镜像按架构分发,见 tools/helpers/arch.py 的映射表

跟着做:4 步到位

  1. 装好命令行工具

    sudo apt install waydroid

    完成标志:waydroid --version能打印版本号(当前 1.6.3),且waydroid --help列出 init、session、status 等子命令。

  2. 初始化:下载并校验系统镜像

    sudo waydroid init

    完成标志:system 和 vendor 两个压缩包下载完毕,SHA256 校验通过后自动解压到/var/lib/waydroid/images,过程无ERROR。相当于给这个 Android"小隔间"装好了系统盘和硬件驱动盘,校验不过它自己会拒绝使用。

  3. 确认容器服务处于活动状态

    systemctl status waydroid-container

    完成标志:输出中显示active。该服务定义见 systemd/waydroid-container.service,如果未启用,执行sudo systemctl enable --now waydroid-container补上。

  4. 启动全屏 Android 会话

    waydroid showfullui

    完成标志:弹出一个 Wayland 新窗口,约一分钟内开机完成并停在锁屏界面。容器启动、网络脚本(data/scripts/waydroid-net.sh)与镜像挂载等细节都在 tools/actions/container_manager.py 里,跑通了可以翻源码对照。

不同环境,这样切

场景处理方式注意
直连外网直接执行sudo waydroid init默认走官方 OTA 源 ota.waydro.id,无需改动
内网经代理访问命令前缀加HTTPS_PROXY=http://代理地址:端口再执行 init变量只对当条命令行生效,重启终端会失效
机器完全离线在联网机器取好 system/vendor 镜像,拷到/var/lib/waydroid/imagesinit 仍会自动做 SHA256 比对,哈希对不上会直接报错,别绕过

怎么确认成功

waydroid status

成功标志:首行打印Session: RUNNING,并附带 Container 状态与 IP 地址;如果只显示Session: STOPPED,说明容器没起来,往下看"踩坑急救"。

踩坑急救

  • init报 hash doesn't match → 多为网络抖动导致下载中断、文件不完整 → 执行sudo waydroid init -f清掉配置与镜像重新拉取
  • 提示Failed to get system OTA channel→ 连不上官方镜像源 → 按上一节配好HTTPS_PROXY重跑,或用-c/-v参数指定自定义 OTA 频道
  • showfullui无窗口弹出且 status 为 STOPPED → waydroid-container 服务没在跑 →sudo systemctl restart waydroid-container后重新执行 showfullui
  • 日志里报 binder 驱动加载失败 → 内核过旧或驱动未启用 → 用uname -r核对版本,升到 5.10 以上再试

往哪走

跑通之后,waydroid shell可以进 Android 内部直接敲命令,waydroid app install 包名.apk把想用的应用装上去,它就能当一台日常副机了;后续镜像更新用sudo waydroid upgrade一条命令即可。

【免费下载链接】waydroidWaydroid uses a container-based approach to boot a full Android system on a regular GNU/Linux system like Ubuntu.项目地址: https://gitcode.com/gh_mirrors/wa/waydroid

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/11/4 15:30:01

工业操作系统从预研到落地:实时性、可靠性工程实践与踩坑指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/11/4 15:27:01

三菱GX Works3安装全攻略:3分钟快速部署与故障排查

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/11/4 15:26:36

24位ADC加8位MCU:从PT100到热电偶的高精度温度测量方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/11/4 15:25:48

从零搭建金融数据服务:架构设计、数据采集与接口封装实战

1. 金融数据服务从零搭建的核心思路1.1 为什么我要自己动手做一套金融数据服务先说清楚这套东西是干什么的。financial-services这个项目,本质上是一个面向个人开发者和小型团队的自建金融数据聚合与分发服务。它要解决的问题很具体:当你需要做行情监控、…

作者头像 李华