本文主要介绍如何在外网远程连接真机进行开发调试,比如你的备用机在家里你又想在公司远程连接进行一番调试(不要问我为啥不把手机带在身上),不多说直接开始。
0、思路
我们知道 Android 手机可以通过 tcpip
命令打开远程调试端口,在内网就可以通过 ip 使用 adb 进行远程连接了。但是如果在外网这种方法就不行了,因为我们的手机没有公网 ip ,无法通过 ip 直接连接手机。
所以我们这里使用 frp
内网穿透来实现,即通过内网穿透将手机代理到外网,这样我们就可以使用 adb 来进行连接了。
1、准备
- 电脑一台
- Android 手机一台
- 具有公网ip的服务器一台:内网穿透服务器
- frp:内网穿透程序
- QtScrcpy: Android 投屏软件,使用 adb 连接手机将手机画面投屏到电脑,并可通过电脑控制手机
2、实现
2.1、打开手机的远程调试端口
首先开启手机的 USB 调试模式,将手机通过 USB 连接电脑,使用 adb 命令打开远程调试端口:
adb tcpip 5555
2.2、安装 frp
frp分为服务端和客户端,我们需要将服务端安装到你公网的服务器上,将客户端安装到手机里。frp 下载地址:github.com/fatedier/fr… ,根据你的服务器系统下载对应版本。
2.2.1 安装 frp 服务端
因为我的服务器是 Linux 系统的,所以我这里下载的是 linux-amd64 的 frp 包,将其上传到服务器解压, frps.ini
默认配置内容:
[common]
bind_port = 7000
即默认监听 7000 端口作为我们的 frp 服务端口,你也可以改成其他端口,然后通过命令启动 frp 服务:
./frps
运行 frps 即启动了我们的服务,也可以使用 nohup
命令将服务放到后台一直运行:
nohup ./frps &
2.2.2 安装 frp 客户端
客户端就需要安装到手机里,我们下载对应手机平台的 frp 版本 linux-arm64,如果是其他架构的手机选择下载对应版本的即可。
下载完成后将 frp 解压然后上传到手机的 /data/local/tmp
目录下,注意只能是这个目录,其他目录下执行命令会报错。然后修改 frpc.ini
配置文件的内容:
[common]
server_addr = x.x.x.x #frp 服务器的ip
server_port = 7000 # frp 服务端口
[adb] # 名称 随便取
type = tcp
local_ip = 127.0.0.1 # 手机本地地址
local_port = 5555 # 手机调试端口,即第一打开的调试端口
remote_port = 8555 # frp服务穿透的端口
8555
为 frp 服务穿透的端口,需要开放防火墙便于后面使用 adb 连接
配置好后,使用 adb 上传到手机:
db push frp_0.38.0_linux_arm64 /data/local/tmp/frp
然后使用启动 frp 客户端服务
cd /data/local/tem/frp
./frpc
#后台运行
nohup ./frpc &
frpc 即客户端服务。
2.3 连接
上面我们已经将我们的 frp 安装配置好了,这样我们就可以通过外网访问我们手机的远程调试端口了。 使用 adb 进行连接:
adb connect x.x.x.x:8555
然后使用 adb device 看一下是否连接成功:
List of devices attached
x.x.x.x:8555 device
可以看到我们已经连接成功了,这个时候我们就可以通过 adb 进行远程调试了,比如安装应用调试。
2.4、使用 QtScrcpy 将远程设备投屏到电脑
上一步我们已经实现了远程连接手机了,但是我们看不到手机的画面,没法进行手机的操作,所以我们需要使用到 QtScrcpy 这款软件,将远程手机的画面投屏到电脑,并可以使用电脑控制手机。
选择对应的版本下载安装,安装完后启动软件
启动后刷新设备列表就能看到我们上面使用 adb 连接的远程设备了。也可以直接使用下面的无线连接直接进行连接。 选择设备进行连接后就能看到我们的手机画面了,并且能够进行控制:
到此,我们就实现了远程连接手机并对手机进行控制了。
今天的文章Android 外网远程连接真机进行开发调试分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/23203.html