Releases: e-cells/E-cells-Music
Release list
易格音乐 (e-cells-music) v1.4.0
✨ 新功能
- 多用户切换:配合指定的后端服务,支持在同一设备上登录、管理并快速切换多个酷狗账号。新增账号切换对话框与用户入口菜单, 切换账号无需重复登录。
- 酷狗登录验证流程:新增完整的登录验证码处理流程,支持腾讯验证码、极验、酷狗滑块/旋转、数美、网易易盾、手机验证码等多
种验证方式,显著提升酷狗账号登录的成功率与稳定性。
🎵 播放与歌词
- MV 播放优化:新增多策略 MV 数据增强(enrichMv),更可靠地解析 MV 播放源,减少 MV 无法播放或解析失败的情况;同步优化
Android 端 MV 播放器。 - 歌词时间偏移区间调整:设置页新增歌词时间偏移选项,改为可调整歌词延后显示的时间(0–2000ms),适配不同设备的歌词同步差异。
🛠 优化
- 播放器与通知:改进媒体通知服务(MediaNotificationService)与原生音频插件,提升后台播放与通知栏控制的稳定性。
- 桌面歌词:优化 Android 端歌词悬浮窗的同步与渲染逻辑。
🐛 修复
- 修复若干已知问题与细节体验。
易格音乐 (e-cells-music) v1.3.1
🚀 启动速度优化
优化一:移除未使用的构建依赖)
- 移除
@vitejs/plugin-legacy和terser两个无用依赖。 - 新增
isHashedAsset()方法,检测 Vite 构建的带 Hash 文件名(如vendor-vue-DxvQVFli.js),将缓存策略从二级改为三级:
优化二:MV播放器交互体验
播放列表显隐优化
- 横屏全屏播放:自动隐藏右侧播放列表面板,显示播放列表按钮供用户手动切换
- 竖屏非全屏播放:始终显示MV下方播放列表,隐藏播放列表按钮,用户无需额外操作即可浏览播放列表
新增手势控制
- 向左滑动:快退播放(每次后退8秒)
- 向右滑动:快进播放(每次前进8秒)
- 单击:保留原有的左半屏切换控件显隐、右半屏切换播放列表功能
易格音乐 (e-cells-music) v1.3.0
🐛 问题修复 (Bug Fixes)
修复启动“二次黑屏/闪烁”问题:彻底解决了原生 Android 启动机制与前端单页应用(SPA)加载之间的时间差导致的黑屏闪烁现象。
重构启动屏交互逻辑:移除原生端过早关闭 Splash Screen 的设定,新增 JSBridge 指令 (native://hideSplash)。现在由 Vue 前端在首屏组件挂载完成 (onMounted) 后,主动通知原生端撤下启动屏,实现原生与 Web 层的无缝平滑衔接。
✨ 功能优化 (Enhancements)
原生容器底色统一:修改 MainActivity.java 中的 DecorView 默认背景色,消除页面交接时颜色不一致带来的突兀感。
双主题(明暗模式)深度适配:
原生启动屏现已支持跟随系统的深色/浅色模式动态切换背景色(通过 values 与 values-night 独立配置)。
原生底层容器在初始化时会动态读取本地主题偏好(SharedPreferences),确保在“靓丽系”和“暗黑系”主题下冷启动均无闪烁。
🎨 视觉与 UI 升级 (UI/UX Improvements)
全新极简应用图标:移除了原有的纯黑启动占位,启用了全新的应用 Logo。新 Logo 采用纯粹的“绿+白”双色极简设计,直角排版,更符合年轻化与现代审美。
启动页视觉完善:配置了全新的启动屏展示画面,摒弃渐变色,回归干净、纯粹的视觉体验。
易格音乐 (e-cells-music) v1.2.6
更新日志
🎬 Web 端支持 MV 播放
- 新增 HTML5 视频播放器组件 MvHtmlPlayer,Web 端可直接在浏览器中播放 MV
- 播放器支持播放/暂停、进度条拖动、时间显示、全屏播放、控制条自动隐藏
- 播放失败时自动显示错误提示,支持关闭播放器回到封面
- MV 详情页播放器宽度与下方详情信息卡片保持一致,居中对齐
🎥 优先播放 H.264 格式 MV
- 所有环境(Web + 安卓)统一优先选择 H.264 编码的 MV 片源
- H.264 在浏览器中的兼容性远优于 H.265,确保 Web 端播放成功率
- 片源自动切换逻辑同步更新,已选 H.265 时自动回退到 H.264
📱 安卓全屏播放优化
- 修复安卓车机全屏播放 MV 时,视频底部被系统导航栏遮挡的问题
- 横屏全屏时,PlayerView 自动等比缩放到导航栏和状态栏内侧
- 竖屏模式不受影响
⚡ 其它性能优化
- 设置页面增加歌词偏移量选项
- 优化APP启动速度
易格音乐 (e-cells-music) v1.2.5
🚀 横屏性能优化
1. MutationObserver 节流(Scrollbar.vue)
影响最大的单项优化,预计减少 80%+ 延迟
- 移除
attributes和characterData监听,仅保留childList + subtree - 新增 100ms 节流,批量处理 DOM 结构变化
- 新增
contain: contentCSS containment,隔离滚动区域布局
2. 图片懒加载(Cover.vue)
- 新增
loading="lazy"+decoding="async",延迟加载视口外图片 - 移除
animate-pulse加载动画,消除持续重绘开销 - 精简
transition-all duration-700→transition-opacity duration-200
3. CSS 过渡精简(Sidebar.vue)
- 10 处模板
transition-all→transition-colors/ 属性特定过渡 - 5 处样式
transition-all→具体属性(color、opacity、background-color) - 新增
contain: layout style隔离各列表项布局
4. 自适应渲染(Sidebar.vue + performanceProfile.ts)
- 新建
performanceProfile.ts,检测设备内存 / CPU 核心数 / 主线程响应速度 - GeckoView 环境 ≤8GRAM 自动判定为低性能设备
- 低性能设备:跳过歌单封面图片(用纯色占位符替代)
- Dialog / ImportPlaylistDialog 组件改为
v-if懒挂载,仅在打开时创建 DOM
🎤 写真模式改进
- 无写真图片时也可进入写真模式,使用专辑封面作为背景
- 新增
hasArtistPortraits计算属性,区分写真模式开关与写真数据可用性 - 三层背景分支:
- ✅ 有写真图片 →显示歌手写真
- ✅ 无写真图片 →使用封面图(相同遮罩和样式)
- ⬜ 未开启写真模式 →原有封面模糊背景
- 写真切换器、轮播等功能仍通过
artistPortraitUrls.length > 1保护
易格音乐 (e-cells-music) v1.2.4
🎤 歌词逐字渐变修复
- 修复竖屏(写真模式)逐字歌词渐变不可见问题:竖屏下歌手写真背景亮度较高,白色未播文字与背景融为一体,导致从左到右的渐 变扫光视觉上不可见。现在通过歌词区域渐变暗化 + 文字投影增强对比度,竖屏和横屏效果一致
⚡ 歌词性能优化(适配低端安卓车机)
- 逐字渐变渲染改为直接 DOM 操作:绕过 Vue 响应式和虚拟 DOM diff,不再为每个字符每帧创建新 style
对象,消除低端设备上的核心性能瓶颈 - playSeekMs 从 ref 改为普通变量:移除不必要的响应式 setter 开销
- 移除 .lyric-yrc-char 的 will-change 属性:避免每个字符创建独立 GPU 合成层,减少低端设备显存压力
- 跳过 highlighted 属性遍历:updateCurrentIndex 新增 skipHighlight 参数,逐字渐变由 DOM 直接驱动时不再更新冗余状态
- 删除死代码 getYrcStyle():模板不再调用,清理无用函数
- 歌词行增加 CSS Containment:.lyric-row 添加 contain: layout style,浏览器重绘时可跳过其他行
- 精简 .lyric-line transition 属性:移除未使用的 background-color 和 box-shadow 过渡
- 背景模糊半径优化:blur(60px) →blur(30px),视觉差异极小但 GPU 开销减半
🖥️桌面歌词优化
- 行查找算法优化:findLineIndex() 从 O(n) 线性扫描改为 O(log n) 二分查找
📐 横屏低高度屏幕适配
- 封面尺寸缩小:桌面端从 clamp(240px, 38vh, 400px) 调整为 clamp(160px, 30vh, 400px),600px 高度屏幕下封面高度从约
228px 降至 180px - 封面卡片 padding 缩减:从 18px 8px 12px 调整为 10px 8px 6px
- 歌名区间距与字号缩小:间距从 mt-7 减至 mt-4,标题字号从 26px 减至 24px
- 移除播放控制行负边距:md:-mt-6 改为 md:mt-0,彻底消除进度条与播放按钮重合问题
🔧 其他调整
- 歌词提前显示量(lookahead)调整为 0ms,性能优化后歌词已能实时同步
易格音乐 (e-cells-music) v1.2.3
🎬 MV 播放全面重构
- 全新原生 MV 播放器(MvPlayerActivity),使用 ExoPlayer + FFmpeg 软解降级方案,替代原有的 WebView 播放方式
- MV 详情页大幅重写,播放体验更流畅、更稳定
- 新增 MV 播放列表功能,支持连续播放多个 MV
- 搜索页 MV 结果支持「播放全部」
- 歌手详情页 MV 标签页支持「播放全部」
- MV 卡片点击直接唤起原生播放器,支持播放列表上下曲切换
🎁 会员领取体验优化
- 设置页新增「自动领取会员」开关(播放体验区块)
- APP 启动、登录后、进入个人主页时自动领取每日畅听会员并尝试升级概念会员
- 手动领取畅听会员、升级概念会员新增 Toast 提示反馈:
- 领取成功 →显示会员到期日期
- 领取失败 →显示具体失败原因
- 今日已领取 →提示请明日再试
- 自动领取同样支持成功/失败 Toast 通知
🎵 播放器优化
- 启动恢复优化:使用缓存的音频 URL 直接播放,跳过网络请求,启动速度更快
- 修复歌曲进度接近结尾时恢复播放后不自动切下一首的问题
- 持久化缓存音频地址、音质、时长等信息,重启后恢复更精准
- 单曲恢复时异步重建完整播放列表,确保上下曲切换可用
- 歌词滚动优化,减少歌词卡顿与延迟
🔧 其他改进
- 详情页操作栏组件支持隐藏播放/批量按钮,适配 MV 场景
- Android 原生层新增视频播放桥接接口(NativeVideoBridge、NativeMvPlayerBridge)
- 更新 ProGuard 规则以适配新增的原生播放器
易格音乐 (e-cells-music) v1.2.2
🎵 播放体验优化:边播边缓存 + 缓存完成后无缝切换
🚀 新特性
播放即听,缓存无感
- 切歌时立即从网络流开始播放,不再因等待缓存而卡顿
- 缓存在后台静默下载,完成后自动无缝切换到本地文件,播放进度不中断
- 单曲循环模式自动利用已缓存的本地文件,无需重复消耗流量
易格音乐 (e-cells-music) v1.2.1
🎵 电台页面优化
- 电台列表详情页标题由"电台"更改为"音乐电台"
- 移除电台列表详情页的播放按钮(横屏/竖屏模式均适用)
- 优化电台歌曲加载速度,改用多线程并发加载
🌐 Web 端改进
- 修复 Web 开发模式下(npm run dev)持续弹出 native 对话框的问题
易格音乐 (e-cells-music) v1.2.0
🏠 首页
- 更换入口:删除首页中的排行榜入口,新增"音乐电台"入口,听歌选择更多啦!
📋 详情页竖屏模式
- 播放按钮固定吸顶:歌单详情、专辑详情、歌手详情的竖屏模式中,将 ActionRow(播放按钮)从头部移入 song-list-sticky
区域,滚动歌曲列表时播放按钮始终可见可点击,与电台详情页行为一致
🔍 探索发现页
- 修复默认分类加载错误:分类列表加载完成后再加载歌单,确保默认显示第一个分类(场景学习)的歌单,而非"为您推荐"