
318.41 KB
Android 5.0+
5
Universal
Verified safeScanned with ClamAV, APKiD, and Quark-Engine. No threats detected.
What's New
1.0版本
Description
根据您提供的 GitHub 项目链接,这是一个名为 TvMusic 的 Android TV 端音乐播放器开源项目。以下是该项目的核心信息总结:
项目概览
- 项目名称:电视端音乐播放器 (TV Music Player)
- 开发语言:100% Kotlin
- 运行环境:Android 5.0+ (API 21+)
- 设备适配:专为 Android 电视/机顶盒设计,完全适配遥控器操作
- 开源协议:Apache-2.0 License
核心功能亮点
- 本地音乐扫描:自动扫描设备内的 MP3/WAV/FLAC/AAC 等主流格式音频文件
- 歌词同步显示:支持 LRC 歌词文件,6行歌词滚动+当前歌词高亮加粗,带渐变动画
- 遥控器全适配:
- 菜单键:打开/关闭播放列表
- 确认键:播放/暂停
- 上下键:切换上一首/下一首
- 左右键:快进/快退10秒
- 返回键:智能控制(列表页收起列表,播放页退出APP)
- 视觉风格:复刻网易云音乐黑胶播放页,深蓝棕渐变背景,启动无白屏闪烁
- 权限精简:仅需「读取音频文件」权限,无其他敏感权限
技术实现要点
- 播放引擎:基于 MediaPlayer 封装播放/暂停/切歌/进度控制逻辑
- 歌词解析:支持 UTF-8/GBK 多编码 LRC 文件解析,精准时间轴同步
- TV端UI适配:
- 使用 PopupWindow 替代 Dialog 实现列表,避免焦点拦截问题
- 代码绘制渐变背景,兼容低版本电视系统
- 自定义启动主题消除白屏闪烁
- 按键处理:重写 onKeyDown 实现遥控器全按键精准响应
- 内存优化:切后台/退出时自动释放 MediaPlayer 资源,防止内存泄漏
项目结构
tv-music-player/
├── PlayActivity.kt # 主页面逻辑(核心)
├── MusicFile.kt # 音乐文件数据类
├── layout/
│ ├── activity_play.xml # 播放页布局
│ ├── dialog_playlist.xml # 列表布局
│ └── item_playlist.xml # 列表项布局
├── drawable/
│ ├── splash_bg.xml # 启动背景
│ └── lyric_bg_vinyl.xml # 黑胶渐变背景
└── values/styles.xml # 无白屏主题
已知问题与解决方案
- 启动时屏幕发白 → 自定义启动主题,设置深色背景
- 列表页按返回键退出APP → 改用 PopupWindow 实现列表
- 渐变背景不生效 → 代码绘制渐变替代XML渐变
- KeyEvent.KEYCODE_BACK报错 → 使用数值4替代常量
- 歌词乱码 → 增加 GBK/UTF-8 编码自动识别
待优化方向
- 支持歌词字体大小调节
- 增加播放模式切换(单曲循环/随机播放)
- 支持封面图片显示
- 增加音量调节快捷键
- 优化歌词滚动动画流畅度
这是一个轻量级、功能完整且专为电视大屏优化的音乐播放器项目,适合学习 Android TV 开发或作为电视音乐应用的基础框架。
根据您上传的 GitHub Release 页面内容,为您总结 TvMusic 项目的发布信息如下:
📦 发布概览
* 项目名称:TvMusic
* 发布版本:tv-music-1.0(正式版 1.0)
* 发布时间:2026年4月6日 10:49
* 对应代码:c543b7e
📂 下载资源
该版本提供了两种格式的源代码压缩包供下载:
* Source code (zip):ZIP 格式压缩包(2026-04-06 生成)
* Source code (tar.gz):TAR.GZ 格式压缩包(2026-04-06 生成)
💡 项目背景
结合您之前的文档,这是一个专为 Android TV/机顶盒 设计的轻量级音乐播放器。该版本标志着项目的正式发布,核心功能包括:
* 本地音乐扫描(支持 MP3/WAV/FLAC/AAC 等格式)
* 歌词同步显示(支持 LRC 文件,6行滚动+高亮)
* 全遥控器适配(菜单、确认、上下左右、返回键均有对应逻辑)
* 视觉风格(复刻网易云黑胶风格,深蓝棕渐变背景,无白屏)
Rate this app
Ratings & reviews
No reviews yet.