Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎵 Edit-Profile — 音乐偏好档案管理应用

一个基于 Android Jetpack Compose 的音乐偏好与个人档案编辑应用。支持头像设置、基础信息填写、音乐类型与情感偏好选择,并提供本地持久化与 JSON 导入导出能力。

适合学习与实践现代 Android(Kotlin + Compose + MVVM)开发范式。


✨ 功能特性

  • 👤 个人档案
    • 用户名、性别、生日等基础信息
    • 头像设置:相机拍摄或本地图片选择
  • 🎼 音乐偏好
    • 多类型选择:民谣、ACG、说唱、流行、爵士、古典、电子等
    • 情感强度调节:个性化音乐情感偏好
  • 💾 数据与存储
    • 本地数据库:Room 持久化存储
    • JSON 导入导出:便捷备份/迁移(含剪贴板集成)
  • 🖱️ 交互与体验
    • Material Design 3 风格
    • 页面切换动画、直观反馈、响应式布局
  • 🔄 使用流程
    1. 欢迎页(检测本地数据)
    2. 编辑档案
    3. 查看主页信息

🛠 技术栈

  • 语言与框架:Kotlin、Jetpack Compose、Navigation Compose
  • 架构与状态:MVVM、单 Activity、ViewModel、StateFlow + Compose State
  • 数据层:Room(SQLite)、Moshi / Kotlinx Serialization、Type Converters
  • 媒体与权限:CameraX / Camera2、Coil、Accompanist Permissions
  • 异步与生命周期:Kotlin Coroutines、Lifecycle-aware Components

📱 环境要求

  • 最低 Android 版本:API 30+(Android 11+)
  • 编译/目标 SDK:建议使用最新稳定版本
  • 开发工具:Android Studio(建议使用最新稳定版)
  • Kotlin 版本:1.9.0+(或与项目 Gradle 配置一致)

⚙️ 依赖管理(概览)

项目使用 Version Catalog 管理核心依赖,常用包括:

  • Jetpack Compose BOM
  • Room
  • Navigation Compose
  • CameraX / Camera2
  • Coil
  • Kotlinx Serialization / Moshi
  • Kotlin Coroutines

依赖版本以 gradle/libs.versions.toml(或项目实际版本清单)为准。


📂 项目结构(概览)

目录与命名可能因版本调整略有差异,下列为典型组织方式。

app/
 └─ src/main/java/…/
    ├─ MainActivity.kt               # 单 Activity 入口
    ├─ navigation/                   # Navigation 图与路由
    ├─ model/                        # 数据模型(UserProfile 等)
    ├─ data/                         # 数据层(Room、DAO、Converters、Json 工具)
    ├─ ui/
    │   ├─ page/                     # 主页、欢迎页等
    │   ├─ edit/                     # 编辑页面(头像、偏好、基础信息)
    │   └─ theme/                    # 主题与样式
    └─ viewmodel/                    # ViewModel 与状态管理

🔐 数据与隐私

  • 用户数据默认保存在本地(Room)
  • 支持 JSON 导入/导出用于备份与迁移
  • 请谨慎处理导出的 JSON,避免泄露敏感信息

以现代 Android 技术栈构建,专注优雅的编辑体验与良好的架构实践。🎵

About

Second task

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages