侧边栏壁纸
博主头像
小艾博客

见证者,为见证而来。铭记者,因铭记而生。

  • 累计撰写 16 篇文章
  • 累计创建 2 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

如何自架开源云手机,用手机Scrcpy APP连线控制

糖糖
2025-08-14 / 0 评论 / 0 点赞 / 0 阅读 / 0 字
温馨提示:
部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

架设/搭建云手机(Android in Cloud) 的意思就是在电脑上跑Android系统,并透过手机客户端APP远端连线操控。

用性能比较强的主机负责跑游戏,甚至挂机,本机只要串流画面游玩,这样既省电又能满足需求,算是商业版云手机的主要卖点之一了,但其实云手机完全是能用开源软体架在自己电脑上的。

如何自架开源云手机,用手机Scrcpy APP连线控制

1. 自架云手机的理由?

市面上的云手机,多半是向一间公司购买运算资源的订阅制服务,跟PC上的串流游戏十分类似。主要是让使用者方便挂机,或者使用较弱的终端游玩需要高级硬体的手机游戏。

云手机可不可以自架?当然可以,摆脱商业云手机设下的种种使用规定。

你说用TeamViewer再加上Bluestacks,不就可以远端玩游戏了吗?是这样没错,但是我想要类似市面上云手机的操作模式又可以摆脱商业软体,故寻求Bluestacks模拟器以外的替代方案。

并且我不想让云手机只局限在Windows系统上,我要让Linux也可以架起云手机。

故我的方案以Linux为主,并善用Linux上的开源Android模拟器方案。此处的Linux指的是Ubuntu、Fedora、Arch Linux、openSUSE这种的,不包含ChromeOS。

2. 准备硬体

手机:任一台iPhone或Android手机,网速不要太慢。

电脑:Linux系统。

电脑端的网路上传速度至少要10MB/s以上。

关于x86与ARM架构电脑的抉择:云手机就是要架在电脑伺服器上的,才可以永远在线上。不考虑「把一支现有手机拔电池改造成云手机」的土炮作法,焊电容太难了呀。先别想租伺服器,就用手上的零件开工吧。

x86好处是易取得,现有电脑改装就行。 x86效能好,方便扩充硬体,多开游戏方便。 x86电脑加上独显效能秒杀市面上所有手机。但是x86主机很耗电,遇到ARM架构的APP也容易有相容性问题。若是x86架构的电脑,准备至少4核心CPU和8GB RAM给Android模拟器。

ARM好处耗能低,且与主流ARM架构的APK相容性佳,部份ARM电脑甚至可以直接跑起Android系统,而不用借助模拟器。但是ARM装置效能多半较差,不可能多开。市面上一般人可以入手,又能装Linux的ARM电脑最好就RK3588开发板了,处理器效能也顶多在Android中阶手机的水准而已!因为性能因素就没办法多开了。

买Apple Silicon电脑来架云手机的也许可以喔?至于RISC-V架构的Android还在宇宙飘,再等等。

3. Scrcpy简介

Scrcpy是由Genymobile开发,可以有线/无线投影Android手机萤幕到电脑上的开源软体,主要用ADB进行通讯,画面延迟低。

Scrcpy可以iOS手机遥控Android手机,也能遥控自架的云手机。

因为Android 11以上的开发人员选项加入「无线ADB」的功能,因此除了用电脑控制手机外,Scrcpy其实还可以:

• 用iOS装置遥控Android手机,或是Android遥控Android

• 用手机的Scrcpy连线到自架的「云手机」

• 对Android模拟器使用Scrcpy

以上情况假定Scrcpy和被遥控的机器处于同一Wifi网路环境下,靠192.168的区域IP连线。如果要外出不同网路下还能遥控,最简单的方式就是用ZeroTier或TailScale穿透内部网路,再用VPN连回自己家进入虚拟区网,就不需要去调数据机开通讯埠了。

让我们先看看Scrcpy电脑客户端:

1. Scrcpy:最原始的版本,靠指令运作,可自由选择编码器和音讯。

2. QtScrcpy:以Scrcpy为基础研发,提供图形化介面和按键映射指令稿的功能。

3. WS Scrcpy:网页运作的Scrcpy客户端,部署到远端伺服器后从手机浏览器登入就行,无需安装客户端。

Scrcpy手机客户端:

1. Scrcpy for Android by zwc456baby:Android版Scrcpy APP。

2. Scrcpy Mobile by wsvn53:iOS版Scrcpy APP,价格1美金,也可以用侧载的。

这样全平台都有Scrcpy可用了。

不过注意不是每个Scrcpy客户端都有实作传输音讯的功能,如果非常需要开箱即用的音讯,那么你还有以下远端游戏的选项:

• RustDesk手机控制手机

• Sunshine游戏串流,音讯可以传过来。

4. 电脑架设Android云手机的方案

Linux的Android模拟器方案

接着便要考虑云手机的软体了。 Windows有很多Android模拟器,不过很多都是闭源又广告多的商业软体。

Linux没有这些东西,只有容器技术和虚拟机,参见Linux上的Android模拟器解决方案

其中,Waydroid和ReDroid跨架构,可以部署到x86和ARM架构的伺服器。

ReDroid因为网路跟Docker在一起比较好处理,而Waydroid很难从外网存取。

Android-x86虚拟机的方案只适用于x86架构的电脑。

5. 架设虚拟区域网路

虚拟区域网路软体让控制端与被控制端组成虚拟内网。即使手机使用4G,也能够连线到家中使用固网的电脑主机。

这里以ZeroTier为例,只要设定一次后面就很快了。唯一的问题是延迟,所以ZeroTier不适合玩需要即时反应的游戏。

1. 到ZeroTier官网注册帐号,接着在手机下载ZeroTier One的APP,电脑Android虚拟机也下载ZeroTier One客户端。

2. 到ZeroTier的后台建立一个新网路

3. 把新网路的Network ID记下来

4. 手机开启ZeroTier APP,输入Network ID,开始VPN连线。

5. 在电脑端的Android开启ZeroTier APP,输入Network ID连线。

6. 接着在Zerotier后台这边会看到连线的装置,勾选左边的方框同意加入网路。

6. 连线到云手机

1. 只要装置有开VPN连线到ZeroTier的网路,就可以看到该虚拟区域网路下的其他装置。例如从上图可以得知电脑虚拟机的区域IP是172.30.221.253。

2. 因此在手机上的Scrcpy客户端输入172.30.221.253,通讯埠填5555(Android的ADB通讯埠),连线到远端Android。

3. Zerotier预设会使用9993 UDP通讯埠,电脑防火墙开放该通讯埠可改善延迟。若实在不行的话就自架Zerotier伺服器吧。

4. 如果你的Scrcpy不支援Sndcpy传输音效,得用PulseAudio传送Linux音效到手机。

7. 实际操作体验

手机使用4G,电脑是家里的固网,所以二者现处于不同网路环境下。

调整Scrcpy的位元率和解析度可改善lag情况。

连线后,Scrcpy支援多点触控操作。 iOS将APP放到后台可能会自己断线,不过就算断线了马上连回去就行,因为Scrcpy能多个客户端同时连线到Android系统。

使用手机Scrcpy远端玩《碧蓝航线》约一小时后耗电量约10%。

至于电脑的系统资源占用历史如下,战斗时才会飙高。

可以说电脑负责运算,铁定耗电,ARM转译也吃记忆体,如果多开虚拟机挂机,也要考虑CPU效能负荷。

8. 总结

这是给想搞云手机的人一点思考方式。同样,你大可不需大费周章架虚拟机,而是放一支备用Android手机在家里,连线到ZeroTier,也是一个可行方案。

0

评论区