Waydroid是一款可以在linux体内跑android的容器。不同于虚拟机,它利用容器化技术直接在Linux启动android系统,性能比虚拟机要好得多。目前仅支持Wayland session. 但通过在X session中使用一些compositor也能跑起来。
顺便说下,waydroid数据目录:/home/yychi/.local/share/waydroid/data
.
使用指南主要参考archwiki.
Troubleshooting
Android容器内无网络
Note
Android内部快捷菜单中的wifi按钮开关是假的,没有任何意义。即,无论它的状态是啥跟容器内部有无网络连接无关!
- 确保开启iptables和dnsmasq,使用
systemctl status <xxx>
查看状态 /usr/lib/waydroid/data/scripts/waydroid-net.sh
脚本配置问题,参考这个issue
Arm安装包安装失败
由于waydroid的架构和宿主(host)一致,一般是x86_64. 所以为arm架构编译的apk会安装失败。可以尝试casualsnek的脚本1。
这里仅提两个坑点:
- 上面的脚本指导使用python虚拟环境安装依赖包,但是他又要调用waydroid的系统脚本(依赖dbus-python),而且还要sudo权限,sudo完之后很多包会找不到,不如一开始就用系统环境用sudo安装依赖。
- 大陆用户可能受网络问题困扰,终端设置ALL_PROXY不再生效,可能是request包不读这个环境变量。我的做法是,直接浏览器下载好放到指定位置,改改代码跳过校验md5,直接安装。