前言

也许我们会用 Windows Server 服务器来进行一些挂机操作,但是有些应用只能用手机来操作。这时候,我们便可以动手搭建一部自己的“云手机”。本教程也将获取手机的 root 权限,并安装 MagiskLSPosed 管理器。
在此,我选用的服务器是 ORACLE 的 Ampere A1 服务器,采用 ARM 架构。如果你选用 x86 架构,需要进行转译操作,在此不展开。

STEP-1 切换到 root 用户(可选,但相对问题会少一点)

sudo -i

STEP-2 安装必要软件

apt update
apt install docker.io -y
apt install lzip -y
apt install git -y
apt install python3 -y
apt install pip -y
pip install tqdm

STEP-3 下载项目后拉取镜像并安装 Magisk(项目地址:https://github.com/ayasa520/redroid-script

git clone https://github.com/ayasa520/redroid-script.git
cd redroid-script
python3 redroid.py -a 8.1.0 -m
经测验,使用基于 Android 8.1.0 的 redroid 问题最少。

STEP-4 进行其它必要设置(Linux 的内核与内核模块相关)

apt install linux-modules-extra-`uname -r`
modprobe binder_linux devices="binder,hwbinder,vndbinder"
modprobe ashmem_linux

STEP-5 运行容器

docker run -itd \
    --privileged \
    -v /root/MyRemoteAndroidPhone/Android8.1-root:/data \
    -p 1322:5555 \
    redroid/redroid:8.1.0_magisk \
    androidboot.hardware=mt6891 ro.secure=0 ro.boot.hwc=GLOBAL ro.ril.oem.imei=861503068361145 ro.ril.oem.imei1=861503068361145 ro.ril.oem.imei2=861503068361148 ro.ril.miui.imei0=861503068361148 ro.product.manufacturer=Xiaomi ro.build.product=chopin \
    redroid.width=1080 redroid.height=1800 \
    redroid.gpu.mode=guest \
    --rm \
    --cpus="2"

注意:
这里的-p参数的冒号左侧可以自行修改。因为我的学号是 1322,所以就改成了 1322。(笑)
6 行一长串为机型信息,这里模拟的是 Redmi Note 10 Pro 以应对一些风控。
redroid.gpu.mode=guest为设置软解。如果你在某些有GPU的实体机上运行,则可以把 guest 改成 host。如果你不确定,则可以改成 auto
--cpus="2" 是可选项。若添加则该容器在一个4核服务器的最高 CPU 占用率被限制在50%。

使用 docker ps 查看虚拟手机运行状态。如果没有出现相关容器,那么手机可能关机或奔溃了。

STEP-6 使用 scrcpy 连接

scrcpy 的官方下载页面:https://scrcpy.org/download/
如果你没有 ADB 工具,那么你还需要下载 ADB 工具。

adb connect 服务器IP:1322(你设置的容器端口) #先 adb 连接虚拟手机
scrcpy #连接后直接在命令行执行 scrcpy,没有特殊需求的话无需其它参数。

此时就可以看到手机画面了。

STEP-7 Magisk 相关设置,以及 LSPosed 的安装

进入 Magisk,依照提示在软件中确认重启手机。

请注意!Redroid 不会自动重启,在 shutdown 之后,你需要重新启动容器。

7.1 重启后的操作
回到服务器,重新执行 STEP-5 的命令。如果发现有连接不上的异常情况,再重新执行 STEP-4 的命令。

1,在 GitHub 上下载 riru 并用 Magisk 刷入。
2,在 Magisk 上开启 Zygisk 模式。
3,重启。(参考部分7.1)
4,在 Apkpure 上下载 LSPosed 应用程序,并按提示下载 LSPosedZygisk 版本。
5,使用 Magisk 刷入 LSPosed - Zygisk
6,重启。(参考部分7.1)

大功告成,自行研究。

参考资料

翰林的小站
https://blog.hanlin.press/2022/08/play-redroid-on-oracle-cloud/

发表评论