# floating-desktop-app **Repository Path**: zy-explorej2ee/floating-desktop-app ## Basic Information - **Project Name**: floating-desktop-app - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-23 - **Last Updated**: 2025-07-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 悬浮桌面应用 一个基于Electron的悬浮桌面应用,支持WebSocket和HTTP API两种数据接收方式。 ## 功能特性 - 🖥️ 悬浮窗口,始终置顶 - 🔌 支持WebSocket和HTTP API两种连接方式 - 🌐 自动打开浏览器进行搜索 - ⚙️ 可配置的连接设置 - 🎯 系统托盘支持 - ⌨️ 全局快捷键支持 (Ctrl+Shift+F) ## 快速开始 ### 1. 安装依赖 ```bash npm install ``` ### 2. 启动应用 #### 方式一:开发模式 ```bash npm start ``` #### 方式二:构建安装包 ```bash build-final.bat ``` ### 3. 使用WebSocket功能 如果要使用WebSocket功能,需要先启动WebSocket服务器: ```bash # 方式一:使用批处理文件 start-websocket-server.bat # 方式二:直接运行 node websocket-server.js ``` WebSocket服务器启动后: 1. 在应用配置中启用WebSocket 2. 点击"开始"按钮 3. WebSocket状态应该显示为绿色(已连接) ## 配置说明 ### 连接类型 - **API接口**: 使用HTTP API接收数据 - **WebSocket**: 使用WebSocket连接接收数据 - **WebSocket + API**: 同时使用两种方式 ### API端点 - **GET请求**: `http://localhost:30001/api/push-data?data=搜索关键词` - **POST请求**: `POST http://localhost:30001/api/push-data` 发送JSON数据 ### WebSocket - **地址**: `ws://127.0.0.1:8081` - **协议**: 支持文本消息 ## 故障排除 ### WebSocket连接失败 1. 确保WebSocket服务器已启动 2. 检查端口8081是否被占用 3. 在配置中确认WebSocket地址正确 ### API连接失败 1. 检查端口3000是否被占用 2. 应用会自动尝试其他端口(3001-3004) 3. 确认防火墙设置 ### 构建失败 1. 确保Node.js版本 >= 14 2. 检查网络连接(下载Electron可能需要时间) ## 项目结构 ``` floating-desktop-app/ ├── main.js # 主进程 ├── floating.html # 悬浮窗口界面 ├── config.html # 配置窗口界面 ├── websocket-server.js # WebSocket服务器 ├── build-final.bat # 构建脚本 ├── start-websocket-server.bat # WebSocket服务器启动脚本 ├── assets/ # 资源文件 │ └── sysIcon.ico # 系统托盘图标 ├── package.json # 项目配置 └── README.md # 项目说明 ``` ## 更新日志 ### v1.0.0 - ✅ 修复WebSocket连接问题(使用IPv4地址) - ✅ 添加WebSocket服务器 - ✅ 优化系统托盘图标 - ✅ 修复状态指示器位置 - ✅ 改进错误处理和日志输出 - ✅ 支持中文URL解码 - ✅ 修复托盘退出功能 - ✅ 清理多余脚本文件