云服务器挂机明日方舟的实践

文章发布时间:

最后更新时间:

文章总字数:
742

预计阅读时间:
3 分钟

页面浏览: 加载中...

麻烦,感觉难度不大,但是异常麻烦

配置

腾讯云 2核2g轻量应用服务器(最低配置,需要配合swapfile使用)
系统ubuntu22.04LTS

过程

安装docker

1
2
3
sudo apt-get install -y docker.io
sudo systemctl start docker
sudo systemctl enable docker

拉取redroid镜像(官方文档)

1
2
3
4
5
6
7
8
9
10
11
12
## install required kernel modules
apt install linux-modules-extra-`uname -r`
modprobe binder_linux devices="binder,hwbinder,vndbinder"
### optional module (removed since 5.18)
modprobe ashmem_linux
## running redroid (rm就是运行结束后会自动删除该镜像,可以删掉
docker run -itd --rm --privileged \
--pull always \
-v ~/data11:/data \
-p 5555:5555 \
--name redroid11 \
redroid/redroid:11.0.0-latest

安装明日方舟

1
2
3
cd ~/data11/local/tmp # ~/data11 是容器的共用目录, 取决于 docker run 的参数
sudo wget --content-disposition https://ak.hypergryph.com/downloads/android_lastest
docker exec redroid11 sh -c 'pm install /data/local/tmp/*.apk'

可能会有问题 可以用adb来安装

安装maa

先在github上找到maa release里的 MAA-v5.1.0-linux-x86_64.tar.gz下载(选linux-x86_64的最新版本即可

在云服务器上创建文件夹

将压缩包上传到该文件夹

解压

所需代码

1
2
3
tar -zxvf MAA-v5.1.0-linux-x86_64.tar.gz //解压
pip3 install requests //下载依赖
python3 /home/lighthouse/Maa/Python/sample.py //运行Maa 文件地址因人而异(可以在前面使用nohup来挂起,避免离开云服务器后的停止运行

配置swapfile

创建一个用于交换的文件

设置交换文件权限

将文件转换为交换文件格式

启用交换文件

验证交换文件是否已经启用

更新 /etc/fstab 文件以在启动时自动加载交换文件

1
2
3
4
5
6
sudo fallocate -l <大小> /path/to/swapfile
sudo chmod 600 /path/to/swapfile
sudo mkswap /path/to/swapfile
sudo swapon /path/to/swapfile
sudo swapon --show
echo '/path/to/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

感想

麻烦还不好用(配置高可能就好用了吧)

问题1.为什么Maa连接成功之后 过了一会儿再使用 就变成连接失败了

解决方案 观察maa文件夹中的debug文件夹里的日志文件 对症下药

常见的是push 文件到云手机的data/local/tmp文件夹失败

发现是redroid的问题 tmp会从文件夹变为一个文件 内容是hacker

解决方案 在local目录下新建tmps文件夹 并在maa的相应文件中修改push的地址

如果还是push失败 使用adb root 后再试 一般就能解决

还有一种是什么…/server的地址访问失败

解决方案 卸载redroid再重装(治标不治本…

.

问题2.有时候会卡在开始唤醒界面

解决方案 设置sample.py文件每次执行2次任务

.

问题3.基建换人异常

解决方案 换个好一点的云服务器罢

可能可以通过改一下maa或redroid的配置来解决?

.

(未解决)问题4.如何实现自动化maa

解决方案 修改sample.py文件 使其每多少小时执行1次

但是有问题…