Ubuntu24.04玩android手游(基于Waydroid方案安装金铲铲之战)
结论
- 使用waydroid方案,默认配置下实测6局问题不大
- 测试版本1.4.2,需要wayland桌面,X11不支持
- 该方案使用过程中可能存在不稳定情况导致Ubuntu桌面崩溃进入登陆界面,注意丢失桌面未保存文件风险
步骤
- 软件安装
sudo apt install curl ca-certificates -y
curl https://repo.waydro.id | sudo bash
sudo apt install waydroid -y
- 初始化
构造android环境需要下载system和vendor两个镜像文件,如下载速度受限建议开启代理
不需要Google Play
sudo waydroid init
需要Google Play
sudo waydroid init -s GAPPS
安装google play后,认证参考google-play-certification,解决账号登陆问题。对于账号无法下载有区域限制的游戏,比如龙息神寂,建议通过安装第三方安装(例如APKPure),游戏启动时关联账号没有限制
请因为网络问题导致无法下载镜像文件初始化android环境参考
初始化成功不需要再手动初始化android环境
- images下载地址:https://sourceforge.net/projects/waydroid/files/images
- 手动初始化参考:https://docs.waydro.id/faq/using-custom-waydroid-images
- 转译层下载
不安装转译层不会影响系统启动和应用安装,除了游戏依赖库包含x86_64版本,否则无法启动arm64的游戏或应用
sudo apt install lzip
# Ubuntu24.04需要安装后才能执行python3 -m venv venv
sudo apt install python3-venv
git clone https://github.com/casualsnek/waydroid_script
cd waydroid_script
python3 -m venv venv
venv/bin/pip install -r requirements.txt
# 选择android11 -> install -> libndk或libhoudini
# 推荐安装libhoudini, amd cpu可以安装libndk
sudo venv/bin/python3 main.py
- apk安装
waydroid session stop
waydroid session start
# waydroid session start启动会占用当前终端,重新启动新终端
waydroid app install ./10040714_com.tencent.jkchess_a3165754_1.7.19_mt59aX.apk
- 启动游戏
waydroid session stop
waydroid session start
# waydroid session start启动会占用当前终端,重新启动新终端
waydroid show-full-ui
鼠标左下角按住箭头往上滑
点击金铲铲之战启动游戏
- 更新系统
进入系统提示更新尽量不要点击,安装过程会导致桌面崩溃退出,建议命令行更新
waydroid session stop
sudo waydroid upgrade
- 金铲铲能登陆游戏,但是无法连接对战
ip addr
查看网络,关闭不必要的接口,以docker为例
sudo systemctl stop docker.socket
sudo systemctl stop docker.service
sudo systemctl disable docker.socket
sudo systemctl disable docker.service
reboot
- 游戏内点击无法移动(例如潮汐守望者裂隙中无法移动)
- 获取应用名称
waydroid session stop
waydroid session start
# waydroid session start启动会占用当前终端,重新启动新终端
# 有时需要等待数十秒才能显示完整
# 关键字:packageName
waydroid app list
# Name: Dragonheir
# packageName: com.sgra.dragon
# categories:
# android.intent.category.LAUNCHER
- 设置prop属性(packageName对应值,例如龙息神寂)
waydroid session stop
waydroid session start
# waydroid session start启动会占用当前终端,重新启动新终端
waydroid prop set persist.waydroid.fake_touch "com.sgra.dragon"
waydroid show-full-ui
prop相关参考:https://docs.waydro.id/usage/waydroid-prop-options
参考
官方文档:https://docs.waydro.id
建议对以上有疑问的完整阅读说明文档
注意
- waydroid_script需要安装libndk或libhoudini,用于arm64转译x86_64执行。默认建议libhoudini
- 不要同时启动docker,否则会导致游戏无法连接对局,注意新增的网络接口
- 金铲铲之战尽量不要查看装备,存在无法关闭装备详情的情况,需要点击其他对战者再切换自己,或者等到下一阶段即可