# Android Agent调用示例 这是一个Android示例项目,演示如何调用情感分析Agent。 ## 📋 项目结构 ``` androidExample/ ├── app/ │ ├── src/ │ │ └── main/ │ │ ├── java/com/example/agentclient/ │ │ │ ├── MainActivity.kt │ │ │ ├── AgentService.kt │ │ │ ├── models/ │ │ │ │ ├── AgentRequest.kt │ │ │ │ ├── AgentResponse.kt │ │ │ │ └── ExecutionResponse.kt │ │ │ └── utils/ │ │ │ └── ApiClient.kt │ │ └── res/ │ │ ├── layout/ │ │ │ └── activity_main.xml │ │ └── values/ │ │ └── strings.xml │ └── build.gradle.kts ├── build.gradle.kts ├── settings.gradle.kts └── README.md ``` ## 🚀 快速开始 ### 1. 配置API地址 在 `app/src/main/java/com/example/agentclient/utils/ApiClient.kt` 中修改: ```kotlin private const val BASE_URL = "http://your-server-ip:8037" ``` ### 2. 配置Agent ID 在 `MainActivity.kt` 中修改: ```kotlin private val AGENT_ID = "your-agent-id" // 情感分析Agent的ID ``` ### 3. 运行项目 1. 使用Android Studio打开项目 2. 同步Gradle依赖 3. 运行到Android设备或模拟器 ## 📱 功能特性 - ✅ 用户登录 - ✅ 调用Agent API - ✅ 实时显示执行状态 - ✅ 显示Agent回复 - ✅ 错误处理 ## 🔧 依赖库 - Retrofit2:网络请求 - OkHttp:HTTP客户端 - Gson:JSON解析 - Coroutines:异步处理 ## 📝 使用说明 1. **登录** - 应用启动后会自动登录(使用配置的用户名和密码) - 登录成功后可以开始使用Agent 2. **发送消息** - 在输入框中输入文本 - 点击"发送"按钮 - 等待Agent处理并返回结果 3. **查看结果** - Agent的回复会显示在消息列表中 - 执行状态会实时更新 ## 🔑 API说明 ### 登录API ``` POST /api/v1/auth/login Content-Type: application/x-www-form-urlencoded username=admin&password=123456 ``` ### 执行Agent API ``` POST /api/v1/executions Authorization: Bearer Content-Type: application/json { "agent_id": "agent-id", "input_data": { "query": "用户输入", "USER_INPUT": "用户输入" } } ``` ### 获取执行状态API ``` GET /api/v1/executions/{execution_id}/status Authorization: Bearer ``` ### 获取执行结果API ``` GET /api/v1/executions/{execution_id} Authorization: Bearer ``` ## 🎯 示例:调用情感分析Agent ```kotlin // 1. 登录获取token val token = agentService.login("admin", "123456") // 2. 执行Agent val execution = agentService.executeAgent( agentId = "sentiment-analysis-agent-id", userInput = "这个产品真的很棒!" ) // 3. 轮询获取结果 while (true) { val status = agentService.getExecutionStatus(execution.id) if (status.status == "completed") { val result = agentService.getExecutionResult(execution.id) println("情感分析结果: ${result.output_data}") break } delay(1000) // 等待1秒 } ``` ## 📦 构建要求 - Android Studio Hedgehog | 2023.1.1 或更高版本 - JDK 17 或更高版本 - Android SDK API 24 或更高版本 - Gradle 8.0 或更高版本 ## 🔒 安全注意事项 1. **不要硬编码密码**:生产环境应该使用安全的认证方式 2. **使用HTTPS**:生产环境必须使用HTTPS 3. **Token管理**:妥善保管和刷新Token 4. **网络安全配置**:Android 9+需要配置网络安全策略 ## 🐛 故障排除 ### 问题1:网络连接失败 - 检查API地址是否正确 - 检查设备网络连接 - 检查服务器是否运行 ### 问题2:登录失败 - 检查用户名和密码是否正确 - 检查服务器认证服务是否正常 ### 问题3:Agent执行失败 - 检查Agent ID是否正确 - 检查Agent是否已发布 - 查看服务器日志获取详细错误信息 ## 📚 相关文档 - [Agent使用说明](../Agent使用说明.md) - [API文档](../backend/API_DOCUMENTATION.md)