Aether Link 是一款功能丰富的智能语音助手应用,采用最新的 Android 开发技术栈构建。应用集成了 AI 对话、任务管理、语音输入、天气查询等多项功能,为用户提供流畅自然的交互体验。
- 🤖 AI 智能对话 - 基于大语言模型的流式对话体验
- 🎤 语音输入 - 支持长按和点击两种语音输入模式
- 📋 任务管理 - 创建、追踪和管理待办任务
- 🌤️ 天气查询 - 实时天气信息和动态主题切换
- 💬 对话历史 - 完整的对话记录管理
- ⚙️ 个性化设置 - 自定义同步频率等偏好设置
- 🎨 动态主题 - 根据天气和时间自动切换界面主题
- Kotlin - 100% Kotlin 开发
- Jetpack Compose - 现代化声明式 UI 框架
- Material Design 3 - 最新 Material 设计语言
- MVVM 架构 - ViewModel + StateFlow
- Navigation Compose - 页面导航管理
- DataStore - 轻量级数据存储
- Retrofit - RESTful API 网络请求
- Supabase - 后端云服务和数据库
- Kotlinx Serialization - JSON 序列化
- Kotlin Coroutines - 异步编程
- Kotlin Flow - 响应式数据流
- Coil - 图片加载
- ExoPlayer - 音频播放
android-native/
├── app/
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/com/aetherlink/
│ │ │ │ ├── data/ # 数据层
│ │ │ │ │ ├── local/ # 本地数据存储
│ │ │ │ │ ├── model/ # 数据模型
│ │ │ │ │ ├── remote/ # 远程数据服务
│ │ │ │ │ └── utils/ # 数据工具类
│ │ │ │ ├── ui/ # UI 层
│ │ │ │ │ ├── components/ # 可复用组件
│ │ │ │ │ ├── navigation/ # 导航配置
│ │ │ │ │ ├── screens/ # 页面
│ │ │ │ │ │ ├── about/ # 关于页面
│ │ │ │ │ │ ├── chat/ # 对话页面
│ │ │ │ │ │ ├── history/ # 历史记录
│ │ │ │ │ │ ├── home/ # 首页
│ │ │ │ │ │ ├── settings/ # 设置页面
│ │ │ │ │ │ ├── splash/ # 启动页
│ │ │ │ │ │ └── tasks/ # 任务管理
│ │ │ │ │ ├── theme/ # 主题配置
│ │ │ │ │ └── utils/ # UI 工具类
│ │ │ │ ├── AetherLinkApp.kt # Application 类
│ │ │ │ └── MainActivity.kt # 主 Activity
│ │ │ ├── res/ # 资源文件
│ │ │ └── AndroidManifest.xml
│ │ └── build.gradle.kts
│ └── build.gradle.kts
└── settings.gradle.kts
- Android Studio Hedgehog | 2023.1.1 或更高版本
- JDK 17 或更高版本
- Android SDK API 34
- Kotlin 1.9.0 或更高版本
-
克隆项目
git clone https://github.com/aetherstudio-cn/AetherLink.git cd AetherLink/android-native -
配置本地属性
创建
local.properties文件并添加:sdk.dir=<你的 Android SDK 路径> -
同步项目
在 Android Studio 中打开项目,等待 Gradle 同步完成
-
运行应用
- 连接 Android 设备或启动模拟器
- 点击 Run 按钮或使用快捷键
Shift + F10
# Debug 版本
./gradlew assembleDebug
# Release 版本
./gradlew assembleRelease生成的 APK 文件位于 app/build/outputs/apk/ 目录
- 支持流式响应,实时显示 AI 回复
- 自动识别任务指令并创建任务
- 对话历史持久化存储
- 支持多会话管理
- 长按麦克风按钮说话
- 上滑取消录音
- 单击切换录音模式
- 预留 STT(语音转文字)接口
- 根据实时天气自动切换界面主题
- 支持晴天、雨天、雪天等多种天气效果
- 雨天和雷天显示动态雨滴效果
- 昼夜自动切换配色方案
- AI 自动识别并创建任务
- 实时任务进度追踪
- 任务状态分类管理
- 支持任务删除和清理
在 app/src/main/java/com/aetherlink/data/remote/SupabaseClient.kt 中配置:
private const val SUPABASE_URL = "你的 Supabase URL"
private const val SUPABASE_KEY = "你的 Supabase Anon Key"在 app/src/main/java/com/aetherlink/data/remote/LLMService.kt 中配置 AI 服务接口
- 遵循 Kotlin 官方编码规范
- 使用 Jetpack Compose 最佳实践
- 保持 MVVM 架构分层清晰
- 所有网络请求使用协程处理
- UI 状态使用 StateFlow 管理
欢迎提交 Issue 和 Pull Request!
- Fork 本仓库
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启 Pull Request
本项目采用 MIT 协议 - 详见 LICENSE 文件
Aether Studio
Made with ❤️ by Aether Studio