作为一名鸿蒙开发工程师,你是否也有过这样的经历:

“需要真机调试代码了,设备IP是多少来着?端口又是多少?”

“上次用的是192.168.1.100:36197,这次换了网络,又得重新找…”

“每次都要手动输入IP和端口,还要记住这些数字,太麻烦了!”

“要是能自动找到设备和端口就好了…”

如果你也被这种手动输入IP端口的重复劳动困扰过,那么这个工具绝对能帮到你。

这个工具解决了什么痛点?

HDC端口扫描器专门为鸿蒙开发者设计,一键自动扫描局域网内的HDC调试端口,告别手动输入IP端口的重复劳动!

核心价值

  • 自动发现设备HDC端口:扫描当前IP所有可能的HDC端口
  • 一键连接:找到端口后自动执行连接命令
  • 历史记录:记住上次成功的IP,下次优先尝试
  • 双版本选择:Shell版本简单易用,C++版本性能更强

两个版本,各有所长

Shell版本

  • 优点:无需编译,下载即用,跨平台兼容
  • 缺点:扫描速度较慢(约2-3分钟)
  • 适合:偶尔使用,或者不想折腾编译环境的开发者

C++版本

  • 优点:多线程并发扫描,速度飞快(约30秒)
  • 缺点:需要编译,依赖开发环境
  • 适合:经常使用,追求效率的开发者

使用体验

想象一下这个场景:

传统方式

  1. 查看手机ip、端口
  2. 打开DevEco Studio或命令行
  3. 打开IP连接工具输入IP和端口或终端输入命令hdc tconn xxx.xxx.xxx.xxx:xxxxx

使用HDC扫描器

  1. 手机关闭DHCP,修改为静态ip
  2. 打开无线调试
  3. 运行 ./start.sh
  4. 输入ip
  5. 等待扫描完成
  6. 自动连接成功!

下次需要的时候,直接./start.sh回车(会自动记住上次ip)

大大减少了烦人的手动连接设备,还不用担心端口、ip输入错误

演示:

$ ./start.sh

════════════════════════════════════════════════════════════
                 HDC 无线调试端口扫描器
        自动扫描并连接 HarmonyOS 设备的无线调试端口
════════════════════════════════════════════════════════════

加载最近使用的IP: 192.168.5.16

历史IP地址列表:
  1) 192.168.5.16 (最近使用)
  2) 192.168.2.200
  3) 192.168.9.99

请选择 (1-5,f,n) [回车选择1]: 

🔧 正在自动检测最优配置...
   CPU核心数: 11
   推荐线程数: 600
   网络超时: 150ms

开始扫描 192.168.5.16 的端口...
扫描进度: 25%发现开放端口: 36197
192.168.5.16:36197 HDC无线调试连接成功!

=== 扫描结果 ===
成功找到可连接的HDC端口: 36197
   连接命令: hdc tconn 192.168.5.16:36197
   扫描耗时: 3.763秒
   扫描速度: 3429 ports/s

快速开始

Shell版本使用方法

# 1. 克隆项目
git clone https://gitee.com/zestbox/hdc-port-scanner.git
cd hdc-port-scanner

# 2. 安装依赖(仅首次需要)
chmod +x setup.sh
./setup.sh

# 3. 开始扫描
chmod +x start.sh
./start.sh

C++版本使用方法

# 1. 克隆项目
git clone https://gitee.com/zestbox/hdc-port-scanner.git
cd hdc-port-scanner

# 2. 编译C++版本
g++ -std=c++11 -pthread -O2 hdc_scanner.cpp -o hdc_scanner_cpp

# 3. 运行扫描
./hdc_scanner_cpp

建议添加到环境变量,如mac版使用C++版

alias sshhm='/Users/zestbox/Documents/HdcPortScanner/hdc_scanner_cpp'

功能对比表

特性 Shell版本 C++版本
扫描速度 ~2分钟 2-3秒
资源占用 中等
编译需求 需要
并发方式 多进程 多线程
网络检测 netcat 原生Socket

适用场景

  • 日常开发:频繁需要真机调试的开发者
  • 网络切换:经常在不同网络环境下工作
  • 效率追求:希望减少重复操作,专注于代码开发

工作原理

  1. 端口扫描:并发扫描25000-65535端口范围
  2. 自动连接:找到有效端口后自动执行连接命令
  3. 历史记录:保存成功IP,下次优先显示

工具虽小,效率无价。愿每一位鸿蒙开发者都能专注于创造,而不是被重复的手动操作困扰。

项目地址

项目地址:https://gitee.com/zestbox/hdc-port-scanner

欢迎提交Issue和PR,让我们一起让鸿蒙开发更高效!

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐