OpenShriek

在安卓手机上运行安卓程序

written on Monday, July 12, 2021

4G 代理

4G 代理的原理就是在手机上创建一个可以做流量转发的服务,然后将此服务通过 adb forward 转发到中转服务器上,那么之后就可以使用 frp 将流量转到云厂商服务器上,或者直接在本地进行使用,关键程序的开发是使用 python 实现的,那么想要在手机上运行 python 代理反而成为 了我们目前遇到的最大问题,那么下面我们就来解决这个问题,然后 python 程序可以优雅的在 android 设备上运行。

在手机上运行 python 程序

调研一圈以后发现 tmux 可以在手机上直接跑 python 程序,并且 python3-python2 都是支持的,但是当我们使用的时候又发现了一个问题,就是 python 只能在 termux 终端里面使用,是无法在 adb shell 中调用的,这里我们首先要处理的就是将 termux 中的 python 包迁移到 adb shell 中使用。

怎样移植 termux 中的 python 到 adb shell

经过一圈的调研以后终于找到了完美的解决办法,那就是将 termux 中的 python 可执行文件移动到 /system/xbin/ 目录下即可, 这样我们在 adb shell 中直接输入 python 就可以愉快的玩耍了,在配置之前请确保手机可以 root,remount 下面开始操作

# 1. 初始化环境
$ adb root
$ adb remount

# 2. 手机安装 termux,在 termux 中安装 python3
$ pkg install python

# 3. 移动目录文件
$ cd /data/data/com.termux/files/usr/bin
$ ls | grep python

# 4. 输出内容
sailfish:/data/data/com.termux/files/usr/bin # ls | grep python
python
python-config
python3
python3-config
python3.9
python3.9-config
sailfish:/data/data/com.termux/files/usr/bin #

# 5. 这里测试此 Python 是否是我们想要的,得到的答案当然是
$ ./python
Python 3.9.6 (default, Jun 30 2021, 09:17:59)
[Clang 9.0.8 (https://android.googlesource.com/toolchain/llvm-project 98c855489 on linux

# 6. 移动 python 可执行文件到 /system/xbin/ 下
$ cp /data/data/com.termux/files/usr/bin/python /system/xbin/

# 7. 然后回到根目录下执行 python 试试是不是成功了
$ python
Python 3.9.6 (default, Jun 30 2021, 09:17:59)
[Clang 9.0.8 (https://android.googlesource.com/toolchain/llvm-project 98c855489 on linux
如果按照我的操作步骤做还是失败了,可以到 FGProxy 仓库中提 issues
如果不想提交 Issues 可以直接邮件联系我,如果我看到了肯定会为你解答所有问题

This entry was tagged FGProxy, android, linux, python and termux