ArchLinux部署waydroid

在Arch Linux系统上部署Waydroid运行Android APP

文章目录

  • [在Arch Linux系统上部署Waydroid运行Android APP](#在Arch Linux系统上部署Waydroid运行Android APP)
  • [1. 安装要求](#1. 安装要求)
  • [2. 本机环境](#2. 本机环境)
  • [3. 安装 Waydroid](#3. 安装 Waydroid)
  • [4. 网络配置](#4. 网络配置)
  • 5.注册Google设备
  • [6. 运行效果图](#6. 运行效果图)

Waydroid是Anbox配合Haliun技术开发的LXC Android容器,可在GUN/Linux系统运行Android APP
演示视频如下:

ArchLinux部署waydroid运行Android应用

主页有各系统运行Waydroid效果(ArchLiunx、Debian、ubuntu、Fedora Linux 、Linux Mint)文章

1. 安装要求

  1. **显卡要求:**目前Waydroid只支持Intel和AMD的显卡,不支持NVIDIA显卡;

  2. **显示管理器要求:**只支持在 Wayland 显示;(X11使用Waydroid需要使用Weston工具)

    检查当前显示管理器:

    shell 复制代码
    echo $XDS_SESSION_TYPE
  3. 内核要求:Arch Linux内核运行Waydroid需要重新构建安装,也可使用Linux-Zen内核,可直接使用;

    shell 复制代码
    # 安装linux-zen内核
    sudo pacman -S linux-zen
    # 更新grub
    sudo grub-mkconfig -o /boot/grub/grub.cfg
  4. 安装binder核心模组

    Waydroid要求Linux内核支持binder核心模组,但Arch Linux的Linux未开启该选项,需要从AUR安装binder_linux-dkms补充;

    sh 复制代码
    trizen -S binder_linux-dkms

    安装后加载binder

    sh 复制代码
    sudo modprobe binder-linux

    设为开机自动载入

    sh 复制代码
    su
    echo "binder-linux" >> /etc/modules-load.d/binder.conf

2. 本机环境

  • 部署系统:Arch Linux
  • 内核版本:6.5.7-zen2-1-zen
  • CPU:AMD Ryzen™ 7 6800H
  • 显卡:AMD Radeon™ Graphics
  • Waydroid映像檔版本:LineageOS 18 (Android 11)

3. 安装 Waydroid

  1. 从AUR安装Waydroid

    sh 复制代码
    trizen -S waydroid
  2. 安装镜像(挂国外的VPN)

    sh 复制代码
    trizen -S waydroid-image
  3. 启动服务

    SH 复制代码
    sudo systemctl enable --now waydroid-container.service
  4. 桌面启动即可进入

4. 网络配置

(依据情况配置)若Waydroid没有网络,修改防火墙

SH 复制代码
 sudo systemctl enable --now ufw
 sudo ufw allow 53
 sudo ufw allow 67
 sudo ufw default allow FORWARD
 sudo ufw reload
 sudo systemctl restart waydroid-container

5.注册Google设备

  1. 安装Google服务及Google play
SH 复制代码
 git clone https://github.com/casualsnek/waydroid_script
 cd waydroid_script
 # 创建虚拟环境venv
 python3 -m venv venv
 # 虚拟环境进行下载运行所需模块
 venv/bin/pip install -r requirements.txt
 sudo venv/bin/python3 main.py



  1. 获取ID

    Waydroid第一次启动时候无法登陆谷歌账号(提示无法获得Google保护机制认证)

    sh 复制代码
    cd ~/waydroid_script
    # get Android device ID
    sudo venv/bin/python3 main.py certified
    # 生成一串ID序号
  2. 注册Android device ID

    进入 https://www.google.com/android/uncertified ,登录Google账号输入获取到的ID进行注册。

    大约半小时后Waydroid可使用Google服务

  3. 安装APP(Google Play)

    Google Play会自动筛选出适合x86架构下的APP来安装,此时ARM架构下的APP安装会出现问题。

  1. 安装ARM转译器--libhoudini
    由于市场上大多数APP为手机ARM架构定制,电脑为X86架构,必须安装ARM转译器才可以正常使用ARM架构的APP.
sh 复制代码
cd ~/waydroid_script
sudo venv/bin/python3 install libhoudini
  1. 重启Waydroid

    sh 复制代码
    sudo systemctl restart waydroid-container

6. 运行效果图

  • Waydroid桌面:
  • Waydroid应用抽屉:
  • Arch Linux显示应用:
  • ARM架构应用:
  • x86架构应用:
相关推荐
程序员码歌5 小时前
【零代码AI编程实战】AI灯塔导航-总结篇
android·前端·后端
七七&5566 小时前
2024年08月13日 Go生态洞察:Go 1.23 发布与全面深度解读
开发语言·网络·golang
java坤坤6 小时前
GoLand 项目从 0 到 1:第八天 ——GORM 命名策略陷阱与 Go 项目启动慢问题攻坚
开发语言·后端·golang
元清加油6 小时前
【Golang】:函数和包
服务器·开发语言·网络·后端·网络协议·golang
健康平安的活着6 小时前
java之 junit4单元测试Mockito的使用
java·开发语言·单元测试
书弋江山6 小时前
flutter 跨平台编码库 protobuf 工具使用
android·flutter
DjangoJason8 小时前
C++ 仿RabbitMQ实现消息队列项目
开发语言·c++·rabbitmq
m0_480502648 小时前
Rust 入门 KV存储HashMap (十七)
java·开发语言·rust
大阳1238 小时前
线程(基本概念和相关命令)
开发语言·数据结构·经验分享·算法·线程·学习经验
YA3338 小时前
java基础(九)sql基础及索引
java·开发语言·sql