让Android adb支持互联网调试脱离局域网

某些特殊场景下由于不方便,手机不在身边,但需要进行adb调试。

首先可以先开启adb的无线调试模式,我使用的是第二种方式。

在Android手机上安装一个终端模拟器,并赋予root权限,随后执行:

bash 复制代码
setprop service.adb.tcp.port 5555

stop adbd

start adbd

这样adb就支持了局域网调试,假设手机的IP是192.168.0.100,端口是5555

则我们可以使用tcnat开源项目:https://github.com/cih1996/go-tcnat

这是一款可以让内网端口穿透的开源项目,但是需要自己有一个服务器。

按照文档说明,在服务器运行server端。

随后在自己的电脑上配置client.json

bash 复制代码
{
    "server": {
        "host": "129.204.22.xxx",
        "main_port": 8080,
        "transfer_port":7077
    },

    "list": [{
        "tag": "pixel-adb",
        "server_port": 5555,
        "local_addr": "192.168.0.100:5555"
    }
]
}

其中129.204.22.xxx就是服务器的IP地址,而下面的list就是本地的adb端口,server_port则是服务器的监听端口,同样也用的是5555,最后开启tcnat进行穿透。

此时,我就可以在其他电脑使用

adb connect 129.204.22.xxx:5555连接到手机,即使不在同一个局域网。

最后还可以使用vysor这类工具实现投屏

相关推荐
文人sec8 小时前
MySQL主库出问题了,从库怎么办?备库为什么会延迟好几个小时?
android·数据库·mysql
hai_android8 小时前
不用 AIDL,手把手教你手写 Binder 代理类
android·kotlin
mmsx9 小时前
osmdroid 地图实战 03|地图的"分层世界":离线方案、图层模型与 Overlay 体系
android·前端
张文是假的啊10 小时前
IOC依赖注入问题:@Primary 和 @Qualifier的使用
android
换元不配限10 小时前
ConstraintLayout核心用法详解(三):引导线、屏障、组和占位
android·placeholder·barrier·约束布局·guideline
心平气和量大福大12 小时前
android studio(AS)工具-调试-统计总行数
android·ide·android studio
你的坚定13 小时前
SurfaceFlinger合成一帧的完整流程
android
爱笑鱼15 小时前
Android 系统启动机制(七):进入 SystemServer.main() 以后,system_server 还是一个空进程吗?
android·linux
好安静15 小时前
SurfaceFlinger 合成一帧的完整流程
android
alexhilton15 小时前
架构测试为何需要双视图
android·kotlin·android jetpack