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架构应用:
相关推荐
oliveira-time8 分钟前
Java 1.8(也称为Java 8)
java·开发语言
小马爱打代码2 小时前
K8S - 蓝绿发布实战 - Argo Rollouts 零停机方案解析
云原生·容器·kubernetes
钰爱&4 小时前
【Linux】POSIX 线程信号量与互斥锁▲
java·开发语言·jvm
檀越剑指大厂4 小时前
【Docker系列】docker inspect查看容器部署位置
运维·docker·容器
yt948325 小时前
Matlab实现绘制任意自由曲线
开发语言·matlab
oioihoii6 小时前
C++23 std::generator:用于范围的同步协程生成器 (P2502R2, P2787R0)
开发语言·c++·c++23
免檒6 小时前
go基于redis+jwt进行用户认证和权限控制
开发语言·redis·golang
没有梦想的咸鱼185-1037-16637 小时前
全球森林数据如何分析?基于R语言森林生态系统结构、功能与稳定性分析与可视化
开发语言·随机森林·数据分析·r语言
Your易元7 小时前
设计模式-迭代器模式
java·开发语言
2401_858286117 小时前
CD37.【C++ Dev】string类的模拟实现(上)
开发语言·c++·算法