Skip to content

24-2021/24adbspy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

24adbspy

一个轻量级的安卓设备 Web 管理与调试工具。提供设备列表、无线连接、一次性命令执行、交互式终端、文件管理、截屏、以及联系人/短信/定位/WiFi 等信息查看。

特性

  • 设备管理:列出已连接设备,支持无线 ip:port 连接
  • 一次性命令:在 Shell 标签中输入并执行单条命令
  • 交互式终端:通过浏览器获得类终端的交互体验
  • 文件管理:浏览目录、上传/下载、查看、重命名、删除
  • 截屏:一键获取设备当前屏幕图像
  • 信息采集:联系人、短信、定位、WiFi 信息
  • 本地依赖:xterm.js 等资源已本地化,避免外网依赖导致的加载慢问题

环境要求

  • Go 1.20+(建议)
  • Windows 或 Linux/macOS
  • 本地已安装并可执行的 adb(Windows 下支持在项目根目录放置 adb.exe

本地安装adb

参考:https://blog.csdn.net/Javachichi/article/details/145017825

Windows

二进制���内有自带的adb.exe

或者

https://dl.google.com/android/repository/platform-tools-latest-windows.zip

Linux

apt安装

sudo apt update
sudo apt install adb

Macos

https://dl.google.com/android/repository/platform-tools-latest-darwin.zip

快速开始

  • Windows
    • 运行 .\build.bat
    • 执行 .\bin\24adbspy.exe
    • 浏览器访问 http://localhost:15555
  • Linux/macOS
    • 运行 bash build.sh
    • 执行 ./bin/24adbspy
    • 浏览器访问 http://localhost:15555

使用说明

  • 顶部下拉框选择设备,或在右侧输入 ip:port 后点击 Connect 进行无线连接
  • 标签页说明:
    • Shell:一次性命令执行,适合快速查询
    • Terminal (Interactive):交互式终端,适合持续操作
    • Files:文件/目录查看与操作(查看、下载、重命名、删除、上传)
    • Screenshot:截屏并在页面展示
    • Spy Info:联系人、短信、定位、WiFi 信息查看

交互式终端说明

  • 为确保在 Windows 环境也能稳定交互,后端使用 adb shell -t -t 强制远端分配 PTY
    • 代码位置:handlers/terminal.go:45
  • 为避免回车需要按两次:
    • 后端将前端发送的 \r 转换为 \n,保证 adb 立即执行命令
    • 代码位置:handlers/terminal.go:117
  • 为降低输出延迟:
    • 前端将 WebSocket 设置为 arraybuffer,直��写入 xterm
    • 代码位置:static/app.js:159

文件管理

  • 列表中支持查看、下载、重命名、删除
  • 文本与图片文件可直接在浏览器新标签预览(后端使用 exec-out cat 输出)
  • 删除操作带有基本的安全检查,避免误删系统关键路径

构建与目录

  • Windows 构建脚本:build.bat,输出到 bin 目录并复制 static 资源
  • Linux/macOS 构建脚本:build.sh,输出到 bin 目录并复制 static 资源
  • 可执行文件与静态资源位于 bin/ 下,方便打包与分发

常见问题

  • 交互终端显示 “Remote PTY will not be allocated…”:
    • 已启用双 -tadb shell -t -t),若仍异常,请确认设备允许 shell 分配 PTY
  • 回车无响应或需要按两次:
    • 已在后端做 \r\n 适配;若仍异常,��理浏览器缓存后重试
  • 加载慢:
    • 项目已使用本地化的前端依赖,请确认浏览器未被代理或拦截
  • 短信/联系人为空:
    • 可能是权限或系统版本差异导致;项目已加入降级查询和解析逻辑,具体见 handlers/info.go

安全提示

  • 文件删除功能包含基础防护,但请谨慎操作生产设备
  • 请在合法合规的前提下使用信息采集功能(联系人/短信/定位/WiFi)

演示

连接adb

image-20251225124548222

选择adb连接

image-20251225124634076

普通终端

image-20251225124717406

交互终端

image-20251225124734595

文件管理

image-20251230122424389

image-20251230122518420

image-20251230122548752

截图

image-20251230123226958

获取敏感信息(目前存在一些问题)

image-20251230122639733

许可

此项目仅用于学习与研究目的,使用者需自行承担相应风险与责任。

About

adb未授权管���

Resources

Stars

Watchers

Forks

Packages

No packages published