让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这类工具实现投屏

相关推荐
summerkissyou19872 小时前
Android-基础-SystemClock.elapsedRealtime和System.currentTimeMillis区别
android
ian4u2 小时前
车载 Android C++ 完整技能路线:从基础到进阶
android·开发语言·c++
学习使我健康3 小时前
Android 中 Service 用法
android·kotlin
2601_949816684 小时前
MySQL 数据库连接池爆满问题排查与解决
android·数据库·mysql
Tangsong4045 小时前
以Termius的方式进行安卓设备调试?试试【easyadb】| 多功能可视化adb工具
android·adb
码农的小菜园7 小时前
Android的Locale学习笔记
android·笔记·学习
帅次7 小时前
链路到端上:HTTPS 之后安全题还在考什么
android·okhttp·glide·zygote·retrofit
游戏开发爱好者87 小时前
深入理解iOSTime Profiler:提升iOS应用性能的关键工具
android·ios·小程序·https·uni-app·iphone·webview
帅次8 小时前
Android 高级工程师面试参考答案:架构设计、Jetpack 与 Compose
android·面试·职场和发展·架构·composer·jetpack