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 连接
总结
可以看出,笔者的工作学习模式便是由以下 「六个要点」 组成:
❝ 多层次的工作/学习计划 + 番茄工作法 + 定额工作法 + 批处理 + 多任务并行 + 图层工作法❞
希望大家能将这些要点融入自己的工作学习当中,我相信一定会工作与学习地更富有成效。
下面是我学习用到的一些书籍学习导图,以及系统的学习资料。每一个知识点,都有对应的导图,学习的资料,视频,面试题目。
**如:我需要学习 **Flutter的知识。(大家可以参考我的学习方法)
- Flutter 的思维导图(无论学习什么,有学习路线都会事半功倍)
- Flutter进阶学习全套手册
- Flutter进阶学习全套视频
大概就上面这几个步骤,这样学习不仅高效,而且能系统的学习新的知识。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
升。**
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!