夜雨聆风学习资料网

ARTICLE · 1205293

安卓手机不 root,也能跑 Steam 上的 Windows 游戏

安卓手机不 root,也能跑 Steam 上的 Windows 游戏

想在手机上玩 PC 游戏,你大概试过这么几种:串流家里那台一直开着的电脑,或者掏钱订阅云游戏,再或者干脆买台掌机。三种都行,三种都别扭:电脑得待机、云游戏吃延迟和月费、掌机要再花一笔。

有人把这条路直接修到了手机上,而且不用 root。这就是今天的 DroidDeck。

一个 APK,加一套 3GB 的 Linux 运行时

先把它认清楚。仓库在 github.com/Droid-Deck/DroidDeck,下载只认它的 Releases 页(github.com/Droid-Deck/DroidDeck/releases),当前版本 0.4.0,10 月 12 日发的;协议是 GPL-3.0;代码用 Kotlin 写成;仓库 9 月 24 日才建,star 数已经到 1.02 万。我把 README 从头到尾读了一遍,有些话它写得挺克制。

它有件事得单独提醒:没有独立官网。README 说得很直白,别点那些自称是 DroidDeck 团队的网站上的下载链接,那都是假的。要装,认准 Releases 页,再加它自己的 Discord。

一句话说清它是什么:一个装在安卓手机上的应用,把 Valve 的 Steam 客户端以 Big Picture 大屏模式跑起来,再借 Valve 为 ARM 编译的 Proton,让你库里那些 Windows 游戏在手机上直接运行。空间得留够:运行时要 3GB 上下,桌面和模拟器另外再加 1.1GB。

它不需要什么也说清楚:不用 root,不用刷机,不用外接盒子,也不必自己搭一台服务器。游戏跑在你手机上。

Steam 大屏模式在安卓手机上启动后的样子。右列是你库里的游戏,选一个直接开。

不用云游戏,游戏就装在你自己的手机里

以前想在手机玩 PC 游戏,最省事的是串流:家里电脑当主机,手机当块屏,代价是电脑不能关机、家里网得好、出了门就断。云游戏把主机换成别人的机房,看着轻松,延迟、排队、订阅费一样没少,你的操作还得先绕一圈到云端。

本地跑是另一回事。游戏文件下到你手机里,画图的就是手机上那颗 GPU,断网照样玩。DroidDeck 选的是后面这条路,所以它对机型挑得比较狠。

Steam 大屏模式里的中文界面,字体和菜单都正常显示,不用额外折腾。

x86 的游戏,靠 Proton 和 FEX 翻到 ARM 上

这是它最不好解释、也最关键的一层。你库里的 PC 游戏,大多是为 x86-64 的 Windows 编的,而手机芯片是 ARM 架构,指令集根本对不上,游戏连启动都做不到。

DroidDeck 的解法,是把 Valve 给 Steam Deck 做的那套 Linux 游戏环境(Proton)用 ARM64 重新编出来,再叠一层 FEX,把 x86-64 的指令实时翻译成 ARM 听得懂的。翻译有代价,性能会掉,但它能把一个原本不属于手机的软件世界整个搬过来。

以前安卓党想干同样的事,得自己在 proot 里架 wine、配 box64,一个晚上能折腾掉。现在这些被打包进一个 Play 按钮:点下去,它在后台把 Steam 下下来,让你登录,然后就是你熟悉的库。

没有手柄也能玩。Steam 的触屏菜单,虚拟摇杆和按键布局都能自己改。

装完不是马上能玩,先开一个开发者选项

门槛先摆出来,别下完才发现手机不行。它只认高通 Adreno 显卡,而且要 Adreno 730 或更新的、以及 8 系;Adreno 6xx 算实验状态;Mali、Xclipse、PowerVR 和 Adreno 710 明确不支持。系统要安卓 9 以上。联发科、Exynos、Google 自研 Tensor 那几颗常见 GPU,基本都进不来。

装法不复杂:Releases 页拿 APK,装完再补一个 Linux 运行时。安卓 14 及以上,要先去开发者选项里把「停用子进程限制」打开,否则 Steam 起不来;如果你的系统里没这个开关(安卓 12、13),第一次开 Steam 会弹一个「帮我修好」的按钮,替你把这步做掉。

第一次点 Play 之后,Steam 自己下载、你登录,接下来就是库界面。

每个游戏可以存一套自己的按键和画质配置,换着玩不用每次重设。

它还能把 GOG、Epic、Amazon 的游戏收进一个库

Steam 之外,它把几个 PC 商店也接进来了:登录 GOG、Epic Games、Amazon Games 之后,游戏会下载进同一个库。这部分能力建在 Legendary、gogdl 这些开源项目上,不是自己从零写的。

桌面和 Linux 应用也归它管。Store 那一栏能从 Flathub 装 ARM64 的 Linux 程序和游戏(也可以走 Appimage),装完还能进一个简化的 Linux 桌面,安卓应用则放在另一个抽屉里。

应用里的 Store 页,可以直接装 Flathub 上 ARM64 的 Linux 应用和游戏,也有 Appimage 的路子。

它只认高通的 Adreno,联发科一律免谈

它的边界很硬,没有讨价还价。我去它的 issue 区翻了翻:未关闭的 271 条里,最热闹的一条是 #218,一群 Pixel 用户在求它支持 Mali 显卡,维护者在下面把原因讲得很干脆:DroidDeck 的会话跑的是 Mesa 的 Turnip 驱动,代码里只认带 KGSL 节点的设备,或高通的 Vulkan 驱动,Mali 在下载之前就被挡掉了。也就是说,这不是加个开关的事,是要给每家 GPU 单独写一套驱动桥。

除了 GPU,它还很嫩。0.4.0 摆在那儿,桌面模式走的是软件渲染,帧率看机型;Firefox 在 proot 下的沙箱也被削弱过。这些它自己在 README 的 Limits 里都写了,不藏。

桌面模式:能进一个简化的 Linux 桌面,安卓应用则放在单独的抽屉里。

值不值得折腾,看你手机里那颗 GPU

它真正打动我的,是那种「把一台掌机拆散了再装进手机」的笨功夫:Valve 开源的 Proton、FEX、Turnip,别人一个零件一个零件拼起来,凑成一件能用的东西。这种活儿不酷,但很硬。

我的建议也简单:如果你手边正好有一台骁龙 8 系手机,找个晚上试一次就知道行不行;试不通也别急着删,把机型和日志留一份,贴到它的 Discord 里。没有兼容机型的话,看看也挺好。你库里那些游戏是你自己买的,让它在哪台设备上跑,本来就该由你说了算。

相关学习资料