# HLMP **Repository Path**: codewuren/hlmp ## Basic Information - **Project Name**: HLMP - **Description**: 基于Flutter框架开发的跨平台音乐播放器 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-13 - **Last Updated**: 2025-09-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # HLMP - 花琉听音乐播放器 ## 项目概述 HLMP(花琉听音乐播放器)是一款使用Flutter构建的现代化跨平台音乐播放器。它提供无缝的音乐聆听体验,具有智能推荐、播放历史跟踪和多平台支持等高级功能。 ## 功能特点 - **多格式音频支持**:支持MP3、FLAC、AAC等流行音频格式 - **现代化界面**:简洁直观的界面,支持深色/浅色主题 - **跨平台支持**:可在macOS、Windows、Linux、iOS和Android上运行 - **智能推荐**:基于聆听习惯的AI音乐推荐 - **播放历史**:全面的聆听历史和统计数据跟踪 - **播放列表管理**:创建、编辑和管理自定义播放列表 - **音频控制**:完整的播放控制,包括随机播放、重复播放和队列管理 - **安全文件访问**:沙盒化文件访问,具有适当的权限控制 - **国际化支持**:支持多种语言(英文、中文) - **本地数据库**:基于SQLite的本地存储,用于音乐元数据和偏好设置 ## 安装指南 ### 前置要求 - Flutter SDK (>=3.0.0) - Dart SDK (>=3.0.0) - 平台特定的开发工具: - **macOS**: Xcode 14.0+ - **Windows**: Visual Studio 2022 - **Linux**: CMake, Ninja - **Android**: Android Studio, Android SDK - **iOS**: Xcode 14.0+ ### 安装步骤 1. **克隆仓库** ```bash git clone https://github.com/yourusername/hlmp.git cd hlmp ``` 2. **安装依赖** ```bash flutter pub get ``` 3. **生成本地化文件** ```bash flutter gen-l10n ``` 4. **运行应用程序** ```bash # macOS平台 flutter run -d macos # Windows平台 flutter run -d windows # Linux平台 flutter run -d linux # Android平台 flutter run -d android # iOS平台 flutter run -d ios ``` ## 使用示例 ### 基本播放功能 ```dart // 播放音乐文件 final musicProvider = Provider.of(context, listen: false); await musicProvider.playMusic(selectedMusic); // 控制播放 await musicProvider.pauseMusic(); await musicProvider.resumeMusic(); await musicProvider.stopMusic(); ``` ### 播放列表管理 ```dart // 创建新播放列表 final audioService = AudioPlayerService(); await audioService.setPlaylist(musicList); // 添加音乐到播放列表 await audioService.addToPlaylist(newMusic); // 从播放列表移除音乐 await audioService.removeFromPlaylist(musicIndex); ``` ### 主题切换 ```dart // 在浅色和深色主题之间切换 final themeProvider = Provider.of(context, listen: false); themeProvider.toggleTheme(); ``` ## 配置选项 ### 音频设置 - **音频质量**:配置比特率和采样率偏好 - **淡入淡出**:设置曲目间的淡入淡出持续时间 - **均衡器**:自定义音频均衡器设置 - **音量**:设置默认音量级别和音量曲线 ### 界面偏好 - **主题**:选择浅色、深色或系统主题 - **语言**:选择界面语言(英文/中文) - **布局**:自定义播放器布局和控件 - **动画**:启用/禁用界面动画 ### 隐私与安全 - **文件访问**:配置文件夹访问权限 - **数据收集**:控制分析和使用数据收集 - **缓存管理**:设置缓存大小限制和清理策略 ## 贡献指南 ### 开始贡献 1. Fork 仓库 2. 创建功能分支 (`git checkout -b feature/amazing-feature`) 3. 进行更改 4. 为新功能添加测试 5. 确保所有测试通过 (`flutter test`) 6. 提交更改 (`git commit -m 'Add amazing feature'`) 7. 推送到分支 (`git push origin feature/amazing-feature`) 8. 创建 Pull Request ### 代码标准 - 遵循Dart/Flutter样式指南 - 为新功能添加全面的文档 - 为所有新功能包含单元测试 - 确保代码通过静态分析 (`flutter analyze`) - 使用有意义的提交消息 ### 错误报告 报告错误时,请包含: - 操作系统和版本 - Flutter/Dart版本 - 重现问题的步骤 - 预期与实际行为 - 截图或日志(如适用) ## 许可证信息 本项目采用MIT许可证 - 详情请参阅 [LICENSE](LICENSE) 文件。 ### 第三方库 - **just_audio**: 音频播放功能 - **sqflite**: 本地数据库管理 - **provider**: 状态管理 - **file_picker**: 文件选择功能 - **shared_preferences**: 用户偏好存储 ## 贡献 我们欢迎来自世界各地开发者的贡献! ## 支持 如果您遇到任何问题或有疑问,请随时在GitHub上提出issue。 ## 致谢 感谢所有贡献者和Flutter社区使这个项目成为可能。