AiMusic
一款音乐app,交互模仿汽水音乐。github地址
项目介绍
此项目为纯Flutter项目, 使用主要框架:
- Dio 封装网络请求
- dio_cookie_manager 管理账户cookie信息
- Bloc 状态管理
- JustAudio 音频播放
- qr_flutter 二维码扫描, 做登录验证
- flutter_bloc 状态管理
- cached_network_image 图片缓存
- shimmer 图片加载动画
- palette_generator 颜色提取
环境配置:
Flutter 3.24.5 • channel stable • https://github.com/flutter/flutter.git
Tools • Dart 3.5.4 • DevTools 2.37.3
服务端接口说明
项目中使用的服务端接口均来自于 NeteaseCloudMusicApi , 感谢作者的无私分享。
本地搭建服务端环境请自行在电脑中安装nodejs环境, 然后使用以下命令运行NeteaseCloudMusicApi即可
npx NeteaseCloudMusicApi@latest
然后将项目中 dio_utils.dart
文件中的 _baseUrl
改成电脑的ip地址+端口,即可通过手机访问
项目中目前使用的是本人的服务器, 不保证长期可用.
功能展示
- 首页三tab布局
- 音乐播放主控界面,滑动切歌
- 发现页面,热门歌单, 热门歌手, 推荐歌单等
- 登录,包含账号密码登录(失效),验证码登录(失效), 二维码登录(可用, 使用网易云音乐扫描二维码登录)
后续还有新功能,陆续添加
发现页面,支持嵌套滑动, 歌单详情页, 滑动吸顶等
播放页面,沉浸式背景,随机颜色,中间tab底部bar修改为播放按钮, 上下滑动切歌, 预览进度, 拖动控制等
登录相关, 账号密码登录(失效), 验证码登录(失效), 二维码登录(可用, 使用网易云音乐扫描二维码登录)