# 工作手机Agent APP > 安装在手机上,实现远程控制和项目绑定 --- ## 功能特性 - ✅ **远程服务器连接** - WebSocket长连接 - ✅ **项目绑定** - 每台手机绑定指定项目 - ✅ **后台运行** - 前台服务保持运行 - ✅ **开机自启** - 系统启动后自动连接 - ✅ **断线重连** - 网络恢复后自动重连 - ✅ **远程命令执行** - 接收服务器指令并执行 --- ## 安装方式 ### 方式1: 直接安装APK 1. 从Release页面下载 `WorkPhoneAgent.apk` 2. 传输到手机并安装 3. 允许"安装未知来源应用"权限 ### 方式2: 源码编译 ```bash # 进入项目目录 cd sdk/android-app # 使用Gradle编译 ./gradlew assembleDebug # APK位置 # app/build/outputs/apk/debug/app-debug.apk ``` --- ## 使用指南 ### 1. 首次配置 1. 打开APP 2. 填写**服务器地址**: `ws://sdk.quwanzhi.com:8899/ws/device` 3. 填写**项目ID**: 从管理后台获取 4. 设备ID默认自动生成为奥创兼容格式:`md5(android_id)`(可自定义覆盖) 5. 点击"连接服务器" ### 2. 状态说明 | 状态 | 说明 | |------|------| | 未连接 | 服务未启动 | | 正在连接... | 正在建立WebSocket连接 | | 已连接 | 成功连接服务器 | | 已断开 | 连接已断开 | | 连接错误 | 网络或服务器异常 | ### 3. 后台运行 - 连接成功后,服务会在后台持续运行 - 通知栏会显示"工作手机Agent - 已连接" - 即使关闭APP,服务依然运行 - 开机后自动启动并连接 --- ## 服务器端配置 ### WebSocket端点 服务器需要提供WebSocket端点接收设备连接: ``` ws://your-server:8899/ws/device/{device_id} ``` ### 消息格式 **设备注册消息:** ```json { "type": "register", "device_id": "device_001", "project_id": "project_xxx", "platform": "android", "model": "Redmi Note 13", "sdk_version": 34, "app_version": "1.0.0" } ``` **心跳消息(默认30秒,可远程配置):** ```json { "type": "heartbeat", "device_id": "device_001", "timestamp": 1706000000000 } ``` **心跳配置(服务器下发):** ```json { "type": "config", "heartbeat_interval_seconds": 10 } ``` **执行命令(服务器发送):** ```json { "type": "execute", "command_id": "cmd_001", "action": "open_app", "params": { "package": "com.tencent.mm" } } ``` **命令结果(设备返回):** ```json { "type": "result", "command_id": "cmd_001", "device_id": "device_001", "success": true, "message": "已打开 com.tencent.mm", "timestamp": 1706000001000 } ``` --- ## 支持的命令 | 命令 | 参数 | 说明 | |------|------|------| | open_app | package: 包名 | 打开指定APP | | get_installed_apps | 无 | 获取已安装APP列表 | | get_device_info | 无 | 获取设备信息 | --- ## 权限说明 | 权限 | 用途 | |------|------| | INTERNET | 网络连接 | | FOREGROUND_SERVICE | 后台服务 | | POST_NOTIFICATIONS | 显示通知 | | RECEIVE_BOOT_COMPLETED | 开机自启 | | SYSTEM_ALERT_WINDOW | 悬浮窗(预留) | --- ## 项目结构 ``` android-app/ ├── app/ │ ├── src/main/ │ │ ├── java/com/workphone/agent/ │ │ │ ├── MainActivity.kt # 主界面 │ │ │ ├── AgentService.kt # 后台服务 │ │ │ └── BootReceiver.kt # 开机启动 │ │ ├── res/ │ │ │ ├── layout/ # 布局文件 │ │ │ └── values/ # 资源文件 │ │ └── AndroidManifest.xml │ └── build.gradle ├── build.gradle ├── settings.gradle └── README.md ``` --- ## 编译要求 - Android Studio 2023.1+ - JDK 17 - Gradle 8.2 - Android SDK 34 --- ## 联系方式 - 微信: 28533368 - 邮箱: zhiqun@qq.com