当前位置: 首页 > news >正文

ArchLinux部署waydroid

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

文章目录

  • 在Arch Linux系统上部署Waydroid运行Android APP
  • 1. 安装要求
  • 2. 本机环境
  • 3. 安装 Waydroid
  • 4. 网络配置
  • 5.注册Google设备
  • 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工具)
    检查当前显示管理器:

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

    # 安装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补充;

    trizen -S binder_linux-dkms
    

    安装后加载binder

    sudo modprobe binder-linux
    

    设为开机自动载入

    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

    trizen -S waydroid
    
  2. 安装镜像(挂国外的VPN)

    trizen -S waydroid-image
    
  3. 启动服务

    sudo systemctl enable --now waydroid-container.service
    
  4. 桌面启动即可进入

4. 网络配置

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

 sudo systemctl enable --now ufwsudo ufw allow 53sudo ufw allow 67sudo ufw default allow FORWARDsudo ufw reloadsudo systemctl restart waydroid-container

5.注册Google设备

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

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

    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.
cd ~/waydroid_script
sudo venv/bin/python3 install libhoudini
  1. 重启Waydroid
    sudo systemctl restart waydroid-container
    

6. 运行效果图

  • Waydroid桌面:

在这里插入图片描述

  • Waydroid应用抽屉:

在这里插入图片描述

  • Arch Linux显示应用:

在这里插入图片描述

在这里插入图片描述

  • ARM架构应用:

在这里插入图片描述

  • x86架构应用:

在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • leetcode-148. 排序链表
  • 系统架构师考点--系统架构设计(下)
  • 【Vue3】watchEffect
  • 基于Netty服务端快速了解核心组件
  • PHP师生荣誉管理系统—计算机毕业设计源码10079
  • RuntimeError: No CUDA GPUs are available
  • 【Redis 初阶】初识 Redis
  • 设计模式7原则
  • linux练习2
  • magento2 安装win环境和linux环境
  • Hive之扩展函数(UDF)
  • 【设计模式】工厂模式详解
  • 宝塔安装mysql5.7无法通过远程连接
  • 获取手机当前信号强度(dbm/asu值)解决 getGsmSignalStrength()总是返回99问题
  • 设计模式-备忘录
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • Android交互
  • CentOS 7 防火墙操作
  • ES6系统学习----从Apollo Client看解构赋值
  • Git 使用集
  • HTTP中的ETag在移动客户端的应用
  • java正则表式的使用
  • Linux Process Manage
  • Netty+SpringBoot+FastDFS+Html5实现聊天App(六)
  • node学习系列之简单文件上传
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • Spring Boot快速入门(一):Hello Spring Boot
  • Windows Containers 大冒险: 容器网络
  • 记一次和乔布斯合作最难忘的经历
  • 解析 Webpack中import、require、按需加载的执行过程
  • 七牛云假注销小指南
  • 回归生活:清理微信公众号
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • ​1:1公有云能力整体输出,腾讯云“七剑”下云端
  • ​LeetCode解法汇总1410. HTML 实体解析器
  • #define、const、typedef的差别
  • (1)常见O(n^2)排序算法解析
  • (11)工业界推荐系统-小红书推荐场景及内部实践【粗排三塔模型】
  • (ctrl.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“
  • (Matalb分类预测)GA-BP遗传算法优化BP神经网络的多维分类预测
  • (SERIES12)DM性能优化
  • (八)光盘的挂载与解挂、挂载CentOS镜像、rpm安装软件详细学习笔记
  • (差分)胡桃爱原石
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (十六)串口UART
  • (四)汇编语言——简单程序
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (一)appium-desktop定位元素原理
  • (转)Mysql的优化设置
  • (转载)从 Java 代码到 Java 堆
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .NET 4.0网络开发入门之旅-- 我在“网” 中央(下)
  • .net mvc actionresult 返回字符串_.NET架构师知识普及
  • @Bean有哪些属性
  • @RestControllerAdvice异常统一处理类失效原因