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环境

  1. images下载地址:https://sourceforge.net/projects/waydroid/files/images
  2. 手动初始化参考: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

  • 游戏内点击无法移动(例如潮汐守望者裂隙中无法移动)
  1. 获取应用名称
waydroid session stop
waydroid session start
# waydroid session start启动会占用当前终端,重新启动新终端

# 有时需要等待数十秒才能显示完整
# 关键字:packageName
waydroid app list

# Name: Dragonheir
# packageName: com.sgra.dragon
# categories:
#        android.intent.category.LAUNCHER
  1. 设置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,否则会导致游戏无法连接对局,注意新增的网络接口
  • 金铲铲之战尽量不要查看装备,存在无法关闭装备详情的情况,需要点击其他对战者再切换自己,或者等到下一阶段即可
posted @ 2024-06-15 23:47  rdwr  阅读(748)  评论(0编辑  收藏  举报