Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3ffcb525d3 | ||
|
|
00cdf00fe0 | ||
|
|
abec806aea | ||
|
|
bf74848404 | ||
|
|
681fb2d6a0 | ||
|
|
c4248f8cc5 | ||
|
|
2de521154c | ||
|
|
e02b2fbaa7 | ||
|
|
a74eefa394 | ||
|
|
49e08e3e24 | ||
|
|
47dafdf839 | ||
|
|
394db69387 | ||
|
|
e92af5d83d | ||
|
|
78f6683ff1 | ||
|
|
eac5511e86 | ||
|
|
bede8a7a14 | ||
|
|
bc51ab8f46 | ||
|
|
3bbc259f04 | ||
|
|
51df07d54f | ||
|
|
88620603c9 | ||
|
|
4821a3a247 | ||
|
|
f8d3dab6b2 |
@@ -3,94 +3,86 @@
|
||||
</p>
|
||||
|
||||
<p align="center"><strong>Entryway</strong></p>
|
||||
<p align="center">多服务器聚合管理的 Android 媒体客户端,支持 Jellyfin 和 Emby。</p>
|
||||
<p align="center">A multi-server aggregation Android media client for Jellyfin & Emby.</p>
|
||||
<p align="center">一扇门,通往你的全部影音。聚合 Jellyfin、Emby、Plex、fnOS、Navidrome 与本地 / SMB / WebDAV 媒体源的跨平台客户端。</p>
|
||||
<p align="center">One entryway to all your media — a cross-platform client for Jellyfin, Emby, Plex, fnOS, Navidrome, local folders, SMB and WebDAV.</p>
|
||||
<p align="center"><a href="https://entryway.top"><strong>官方网站 entryway.top</strong></a> | <a href="https://entryway.top">Official Website</a></p>
|
||||
|
||||
<p align="center">
|
||||
<img src="https://img.shields.io/badge/Platform-Android-3DDC84?style=flat-square&logo=android&logoColor=white" alt="Android">
|
||||
<img src="https://img.shields.io/badge/Kotlin-2.0-7F52FF?style=flat-square&logo=kotlin&logoColor=white" alt="Kotlin">
|
||||
<img src="https://img.shields.io/badge/Jetpack_Compose-Material_3-4285F4?style=flat-square&logo=jetpackcompose&logoColor=white" alt="Compose">
|
||||
<img src="https://img.shields.io/badge/Min_SDK-27_(Android_8.1)-34A853?style=flat-square" alt="MinSDK">
|
||||
<img src="https://img.shields.io/badge/License-MIT-blue?style=flat-square" alt="License">
|
||||
<img src="https://img.shields.io/badge/Android-0.90.0_Preview-3DDC84?style=flat-square&logo=android&logoColor=white" alt="Android 0.90.0">
|
||||
<img src="https://img.shields.io/badge/Android_TV-0.25.0-3DDC84?style=flat-square&logo=android&logoColor=white" alt="Android TV 0.25.0">
|
||||
<img src="https://img.shields.io/badge/Windows-独立版待发布-8A8F98?style=flat-square" alt="Windows">
|
||||
<img src="https://img.shields.io/badge/Server-Jellyfin%20%7C%20Emby%20%7C%20Plex%20%7C%20fnOS%20%7C%20Navidrome-AA5CC3?style=flat-square" alt="Server">
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
## 最新版本 | Latest Release
|
||||
本仓库是 Entryway 的公开发布仓库:安装包以 Release 附件形式提供,客户端的更新检测也从这里读取版本。手机、TV、Windows 三端**独立发版**,各自使用 `android-phone-v*`、`android-tv-v*`、`windows-v*` 前缀的 Tag。
|
||||
|
||||
- **v0.8.1**:优化首页和服务器详情页加载速度,媒体库先展示前 6 个后异步补齐完整列表,精选轮播背景图优先展示、Logo 后补
|
||||
- **APK**:[`entryway-debug-0.8.1.apk`](https://github.com/JackYucongjia/Entryway_Release/releases/download/v0.8.1/entryway-debug-0.8.1.apk)
|
||||
- **变更日志**:[`RELEASE_NOTES.md`](RELEASE_NOTES.md)
|
||||
## 最新版本 | Latest Releases
|
||||
|
||||
## 概述 | Overview
|
||||
| 平台 | 版本 | 构建号 | 渠道 | 系统要求 | 下载(Gitea) | 镜像(GitHub) |
|
||||
| --- | --- | ---: | --- | --- | --- | --- |
|
||||
| Android 手机 | **0.90.0** | 56 | Preview | Android 8.1+ | [entryway-preview-0.90.0.apk](https://gitea.yamby.cn/yusheng/Entryway_Release/releases/download/android-phone-v0.90.0/entryway-preview-0.90.0.apk) | [下载](https://github.com/YuSheng-Jack/Entryway_Release/releases/download/android-phone-v0.90.0/entryway-preview-0.90.0.apk) |
|
||||
| Android TV | **0.25.0** | 42 | Release | Android 7.1+ | [Entryway-tv-release-0.25.0.apk](https://gitea.yamby.cn/yusheng/Entryway_Release/releases/download/android-tv-v0.25.0/Entryway-tv-release-0.25.0.apk) | [下载](https://github.com/YuSheng-Jack/Entryway_Release/releases/download/android-tv-v0.25.0/Entryway-tv-release-0.25.0.apk) |
|
||||
| Windows x64 | 0.18.0+37 | 37 | — | Windows 10/11 | 独立版待发布 | — |
|
||||
|
||||
**Entryway** 是一个面向自建媒体服务器用户的 Android 客户端,核心设计理念是 **多服务器聚合**——在一个统一的界面中管理和浏览你所有的 Jellyfin / Emby 服务器。
|
||||
| 安装包 | 大小 | SHA-256 |
|
||||
| --- | ---: | --- |
|
||||
| `entryway-preview-0.90.0.apk` | 170,091,554 B | `63dfc5027fd722b9e931b11678b7bb84b72237f64d6f2cad4653a67a6e945b7e` |
|
||||
| `Entryway-tv-release-0.25.0.apk` | 202,557,288 B | `cabfb74233ec14d82603f97606a32dd07998616c3700d50ab39467d48de19150` |
|
||||
|
||||
Entryway is an Android client designed for self-hosted media server users. Its core philosophy is **multi-server aggregation** — managing and browsing all your Jellyfin / Emby servers from a single, unified interface.
|
||||
> [!IMPORTANT]
|
||||
> **1.0 正式版即将发布**,将正式支持音乐与有声书服务器。1.0 与现有 Preview 版本**不兼容、无法直接覆盖升级**,请提前在「设置 › 备份与恢复」备份到本地文件或 WebDAV,安装 1.0 后即可恢复服务器、设置与书签。
|
||||
|
||||
## 核心特性 | Features
|
||||
- 手机版 Preview 是非调试的持续发布构建(R8 + Baseline Profile),沿用 1.0 前公开包的调试证书,现有用户可直接覆盖安装。
|
||||
- 每个版本的更新内容见对应 Release 说明:[Gitea Releases](https://gitea.yamby.cn/yusheng/Entryway_Release/releases) | [GitHub Releases](https://github.com/YuSheng-Jack/Entryway_Release/releases)。`RELEASE_NOTES.md` 仅保留 v0.24.0 及更早的合并发布记录。
|
||||
|
||||
### 🖥️ 多服务器管理
|
||||
- 添加多个 Jellyfin / Emby 服务器,一键快速切换
|
||||
- 服务器卡片显示用户头像、用户名、服务器地址
|
||||
- 长按菜单:重新登录、服务器线路、修改图标、修改备注、设为私密、修改密码、编辑、删除
|
||||
- 溢出菜单:搜索、排序(默认/名称/最近使用)、网格/列表布局切换、显示选项
|
||||
- 私密服务器:标记后默认隐藏,需手动开启显示
|
||||
## 交流群 | Community
|
||||
|
||||
### 🏠 首页即服务器
|
||||
- 首页直接展示当前活跃服务器的媒体库内容
|
||||
- 左上角显示当前服务器名,点击即可切换到其他非私密服务器
|
||||
- 支持精选轮播(Featured Carousel)和无轮播两种模式
|
||||
欢迎加入微信用户群 **Entryway Buddys**:反馈问题、交流服务器与播放设置,新版本和 1.0 正式版的消息也会第一时间在群里发布。
|
||||
|
||||
### 🎬 双引擎播放器
|
||||
- **ExoPlayer 引擎**:默认播放引擎,基于 Media3 + Jellyfin FFmpeg 扩展
|
||||
- **mpv 引擎**:备用高兼容性引擎,基于 libmpv,支持更多编解码格式
|
||||
- 播放失败时自动提供引擎切换建议,支持手动一键切换
|
||||
- 切换引擎时自动保持播放进度
|
||||
- 统一 User-Agent:`Entryway/{version} (android; {api})`
|
||||
Join the **Entryway Buddys** WeChat group for feedback, tips and release news.
|
||||
|
||||
### ⏩ 播放控制
|
||||
- **倍速播放**:0.1x ~ 5.0x 滑动条 + 快速预设(0.5x / 1.0x / 1.5x / 2.0x / 3.0x)
|
||||
- **长按快速倍速**:长按屏幕进入手动短时间高速播放
|
||||
- **手势控制**:左右滑动快进快退、左侧上下滑动调亮度、右侧上下滑动调音量
|
||||
- **画面比例**:循环切换适应/填充/16:9/4:3 等比例模式
|
||||
- **锁屏**:锁定控制界面,防止误触
|
||||
- **剧集导航**:上一集/下一集,播放列表(仅剧集)
|
||||
<p align="center">
|
||||
<img src="community-wechat.png" alt="微信群 Entryway Buddys 入群二维码" width="260">
|
||||
</p>
|
||||
|
||||
### 🔧 mpv 引擎专属
|
||||
- **解码模式切换**:SW(软解)/ HW(硬解)/ HW+(硬解+拷贝)一键循环切换
|
||||
- 字体自动加载,支持字幕渲染
|
||||
> 微信群二维码每 7 天更新一次。如果扫码提示已过期,请到官网 [entryway.top](https://entryway.top/#community) 获取最新的二维码。
|
||||
|
||||
### 🔊 高级音频
|
||||
- Apple Spatial Audio 空间音频检测与启用
|
||||
- HDR / Dolby Vision 能力检测与自动适配
|
||||
## 这一版能做什么 | What's New
|
||||
|
||||
### 🎨 全局主题系统
|
||||
- 支持 **跟随系统** / **浅色** / **深色** 三种主题模式
|
||||
- 基于 Material 3 动态配色方案
|
||||
### 手机版 0.88 – 0.90:界面与交互全面改版
|
||||
|
||||
### 🌐 完整国际化
|
||||
- 界面支持中文(简体/繁体)和英文
|
||||
- 50+ 影视类型名称客户端翻译
|
||||
- 根据系统语言自动切换
|
||||
- **新导航**:底栏「影音 / 接续 / 资源 / 设置」加独立搜索按钮,滚动自动收起;Entryway 自绘线性图标。
|
||||
- **四种视觉效果**:毛玻璃、液态玻璃、薄雾、春山;跟随系统 / 浅色 / 深色主题与主题强调色。
|
||||
- **多服务器合一**:同一部影片在所有服务器上的版本合并展示,支持 4K / HDR / 1080p 筛选,播放中可切到另一台服务器的同一版本。
|
||||
- **推荐 · 接续 · 搜索**:组件化推荐页(TMDB / 豆瓣榜单、流媒体平台);继续观看、收藏、追更跨服务器汇总;全服务器合并搜索。
|
||||
- **播放器**:ExoPlayer / mpv 双内核自动选择,跳过片头片尾、章节、画中画、Anime4K、播放器书签、杜比视界与 HDR 徽标。
|
||||
- **音乐(预览)**:Navidrome 专辑、艺人、歌单,迷你播放器与离线下载。
|
||||
- **个性化**:APP 图标三色自由组合(8 种背景 × 17 种隧道 × 17 种播放三角);简体中文、繁體中文、English、日本語、한국어、Español。
|
||||
- **备份**:本地文件或 WebDAV,服务器、设置与书签一并备份。
|
||||
|
||||
### 📥 离线下载
|
||||
- 队列化下载管理,支持暂停/恢复/取消
|
||||
- 季度/剧集批量下载,下载前显示存储空间预估
|
||||
- 无网络时自动切换到离线内容模式
|
||||
### 支持的媒体源
|
||||
|
||||
## 技术栈 | Tech Stack
|
||||
| 类型 | 服务 |
|
||||
| --- | --- |
|
||||
| 视频服务器 | Jellyfin(含 Jellyfin 12)、Emby 及兼容服务端、Plex、fnOS |
|
||||
| 音乐服务器 | Navidrome(Subsonic 协议,预览) |
|
||||
| 文件源 | 本地文件夹、SMB、WebDAV |
|
||||
| 弹幕 | 弹弹Play 官方、LogVar 弹幕 API、其他弹弹Play 兼容服务 |
|
||||
|
||||
| 类别 | 技术 |
|
||||
|------|------|
|
||||
| **语言** | Kotlin 2.0, Coroutines, Flow |
|
||||
| **UI** | Jetpack Compose + Material 3 + Navigation Compose |
|
||||
| **网络** | Retrofit 3 + OkHttp 5 |
|
||||
| **图片** | Coil 3 |
|
||||
| **播放器** | Media3 ExoPlayer + FFmpeg 扩展 / libmpv (双引擎) |
|
||||
| **存储** | SharedPreferences + DataStore |
|
||||
| **构建** | Gradle 9.4, AGP, KSP |
|
||||
### Android TV 0.25.0
|
||||
|
||||
## 贡献 | Contributing
|
||||
- 首页背景随焦点切换,分区顺序可调并立即生效,返回首页时焦点回到进入前的位置。
|
||||
- Dolby Vision Profile 5 自绘路径:硬件解码 + GPU 色彩重整形。
|
||||
- 遥控器全键盘搜索、手机扫码辅助输入、完整弹幕设置。
|
||||
|
||||
欢迎提交 Issue 和 Pull Request。较大的功能开发建议先开 Issue 讨论范围。
|
||||
## 更新检测 | Update Check
|
||||
|
||||
客户端请求本仓库的 Release 列表,按本平台 Tag 前缀与安装包文件名筛选,优先使用 Gitea,失败时降级到 GitHub。
|
||||
|
||||
## 许可 | License
|
||||
|
||||
Entryway 可免费下载使用,但不开源,源代码不公开。
|
||||
|
||||
Entryway is free to use, but it is not open source.
|
||||
|
||||
+90
-69
@@ -1,102 +1,123 @@
|
||||
# Entryway Release Notes
|
||||
# Entryway v0.24.0
|
||||
|
||||
## v0.8.2 - 2026-04-26
|
||||
本批次将 Android 手机版公开持续发布切换到 **Preview** 构建,并集中发布界面流畅度、隐私服务器保护、缓存搜索、Dolby Vision 与 mpv 稳定性等更新。Android TV 和 Windows 本批次没有代码变化,继续复用上一版已验证安装包。
|
||||
|
||||
### 手机版更新
|
||||
> Preview 是 release 形态的非 debuggable 构建,启用 R8、AOT 与 Baseline Profile,但仍使用历次公开 Debug 包相同的调试证书,现有用户可直接覆盖安装。它属于公开持续发布渠道,不是正式 Release 构建。
|
||||
|
||||
- **首页与媒体库视觉重构**:继续向 Hills 风格靠拢,优化首页精选轮播、我的媒体卡片、媒体目录标题入口和列表过渡效果,减少深浅主题切换时的突兀感
|
||||
- **搜索页体验重做**:将搜索页从海报轮播改为更轻量的文字推荐入口,并限制搜索结果只展示电影和剧集,避免直接展示到单集
|
||||
- **概览页逻辑修复**:媒体目录概览页恢复为展示电影/剧集层级,不再直接铺开所有最终单集;同时修复浅色主题下排序/筛选弹窗未选中项文字不可见的问题
|
||||
- **点击热区优化**:首页与目录概览页的影视卡片点击范围扩展到标题区域,减少只点海报才能进入详情的误操作
|
||||
- **详情页与主题细节修复**:修复剧集详情页分季海报底部异常灰色阴影,并统一部分页面在浅色/深色主题下的背景与文字对比
|
||||
- **GitHub 版本检查**:设置页版本信息接入 `Entryway_Release` 最新发布检测,当前版本一致时显示“已是最新版”,发现手机版 APK 更新时显示下载按钮并调用系统下载器下载
|
||||
## 版本信息
|
||||
|
||||
### TV 版更新
|
||||
| 平台 | 应用版本 | 构建号 | 渠道 | 安装包 | SHA-256 |
|
||||
| --- | --- | ---: | --- | --- | --- |
|
||||
| Android 手机版 | 0.24.0 | 45 | Preview | `entryway-preview-0.24.0.apk` | `413dc569c88b3bff6140609d584d3b826a536f85f2c40ddda57008c839c47ae0` |
|
||||
| Android TV 版 | 0.18.1 | 39 | Debug | `Entryway-tv-debug-0.18.1.apk`(沿用 `v0.23.0`) | `f9a7ef9f71a92df4c0469e75c1e36863062631a9735da417b7b237d54b97e4ba` |
|
||||
| Windows x64 | 0.18.0 | 37 | Debug | `Entryway_0.18.0+37_Windows_x64_Setup.exe`(沿用 `v0.23.0`) | `b744a11a186350461dc6b4143df1fd5ee833bcc0ae1df6bff4339e1824333477` |
|
||||
|
||||
- **新增 Entryway TV 正式模块**:引入独立 `tv-app`,包名为 `com.entryway.tv`,不再复用手机版布局外壳,借鉴 OpenEmby TV 界面并引入 Entryway 内核核心
|
||||
- **TV 登录与服务器录入**:首次启动支持同局域网手机扫码录入服务器,成功添加后自动进入服务器,并保留服务器切换与新增入口
|
||||
- **客厅端首页与详情体验**:迁移并优化 TV 首页、媒体库、概览页、详情页与遥控器焦点效果,补充 Logo、深色模式标签对比度、继续观看标题格式和媒体库封面展示
|
||||
- **TV 播放器增强**:接入 Entryway 的 Exo 播放解析链路,并在不破坏 OpenEmby 播放器 UI 的前提下接入 `MpvPlaybackEngine` 作为第二内核,补齐左右键快进快退、进度条、暂停图标、顶部 OSD、菜单呼出、音轨/字幕/内核切换等体验
|
||||
- **TV 搜索页重做**:新增遥控器全键盘搜索、二维码手机输入、服务器筛选与电影/剧集结果卡片展示,并修复焦点高亮、按钮裁切和浅色文字可读性问题
|
||||
- **TV 首页加载优化与缓存兜底**:首页先展示轻量媒体库列表,再异步加载前几个库和完整库内容;完整刷新成功后写入本地缓存,网络异常时优先用缓存兜底
|
||||
- **TV 品牌与更新检测**:应用名、Logo、UA、`X-Emby-Client` 与版本检查均切换为 Entryway TV,并指向 `Entryway_Release` 的 TV 版 APK
|
||||
## Android 手机版 0.24.0
|
||||
|
||||
### APK
|
||||
### Preview 构建与界面性能
|
||||
|
||||
- 手机版:`entryway-debug-0.8.2.apk`
|
||||
- TV 版:`Entryway-tv-debug-0.8.2.apk`
|
||||
- 公开持续发布从 Debug 切换到 Preview:关闭调试模式并启用 R8、AOT 与 Baseline Profile,减少 Debug 构建对启动和界面性能的限制。
|
||||
- 首页滚动视差、图片阴影与播放器进度更新改为更轻量的绘制和局部状态更新,避免整页或整层控件逐帧重组。
|
||||
- 首页数据由高频主线程轮询改为数据就绪后主动推送。
|
||||
- 页面切换统一为约 300 毫秒的方向性转场,精简重复淡入、缩放和多组按压弹簧动画。
|
||||
- 完善手机、Medium 平板与 Expanded 平板的布局规范。
|
||||
|
||||
### 构建信息
|
||||
### 搜索与首页缓存
|
||||
|
||||
- `versionName`: `0.8.2`
|
||||
- `versionCode`: `25`
|
||||
- 搜索页优先从各服务器的 Home Snapshot 缓存立即返回结果,后台实时搜索完成后再替换。
|
||||
- 慢服务器或暂时异常的服务器不再让搜索页长期空白,实时搜索失败也不会清空已有缓存结果。
|
||||
- 读取其他服务器缓存时不切换当前活动服务器;首页缓存更新后同步刷新搜索缓存。
|
||||
- 首页轮播支持直接展示海报,减少横图裁切造成的信息损失。
|
||||
|
||||
## v0.8.1 - 2026-04-23
|
||||
### 隐私与稳定性
|
||||
|
||||
### 首页与服务器详情页加载优化
|
||||
- 私密服务器新增密码与生物识别保护,并确保进入隐私设置前也需要完成验证。
|
||||
- 修复系统备份排除规则未覆盖 DataStore,导致登录凭据与服务器列表可能被纳入系统云备份的问题。
|
||||
- 修复通知权限被拒绝或撤销后,下载通知可能导致崩溃的问题。
|
||||
- 修复详情页重复 artwork tag 可能触发崩溃的问题。
|
||||
- 修复登录页部分小米设备键盘安全区过大,以及 Logo 四周出现白色边线的问题。
|
||||
- 修复深色主题下卡片出现不协调青色描边、语言切换后设置项未刷新及服务器标签中文缺失的问题。
|
||||
|
||||
- **媒体库两段式加载**:首页和服务器详情页先快速展示前 6 个媒体库,随后后台异步补齐完整媒体库列表,避免首屏等待过久或后续媒体库完全不显示
|
||||
- **精选轮播提速**:精选轮播不再强制等待 Logo 与背景图全部解析完成;背景图可用后即展示内容,Logo 后续加载补齐
|
||||
- **轮播兜底展示优化**:当条目没有 Logo 或 Logo 加载较慢时,使用片名文字兜底,减少空白骨架停留时间
|
||||
- **图片预取降噪**:收紧首页图片预取并发和首批预取数量,降低进入首页时的网络与解码竞争,让关键内容优先加载
|
||||
- **精选数据轻量化**:精选轮播请求数量从 10 条缩减为 6 条,减少随机推荐和首屏图片解析成本
|
||||
### 播放器、Dolby Vision 与 mpv
|
||||
|
||||
### 播放与调试链路收敛
|
||||
- 修正 Dolby Vision Profile 5 的色彩与播放路径,根据 Profile、基底层和设备解码能力选择合适策略。
|
||||
- mpv 对需要修正的 Dolby Vision 内容启用 `gpu-next` 与软件解码,普通内容恢复默认路径;ExoPlayer 使用设备解码器能力判断 Dolby Vision 支持。
|
||||
- 新增播放器高级配置:音频解码、gpu-next、快速解码、立体声降混、图片字幕拉伸、不受信任证书、mpv 详细日志、时钟、方向、HDR 色彩模式与最高刷新率等。
|
||||
- 补齐此前只作用于 ExoPlayer 的 mpv 设置,包括 `vd-lavc-dr`、`target-colorspace-hint`、`gpu-api`,并让全屏/最大化画面设置在 mpv 加载完成后正确生效。
|
||||
- 修复部分 115/云盘 302 直链大体积 MKV 在 mpv 读取尾部索引时遇到 Range 403 后直接 EOF、跳片尾或进入下一集的问题;连接失败后会在实际请求层重建连接。
|
||||
- 新播放加载动画替换旧实现,并为 Preview/R8 增加 mpv JNI 保留规则。
|
||||
- 播放进度或播放完成后会刷新首页继续观看等相关区域,同时保留现有缓存策略。
|
||||
|
||||
- **起播诊断写盘关闭**:默认关闭 debug 包中的播放诊断文件写入,避免起播阶段产生额外 I/O
|
||||
- **既有播放修复保留**:延续 v0.8.0 的 NextEmby 稳定流入口、认证参数补齐、Exo 外挂字幕修复和字幕浮窗文案修正
|
||||
## Android TV 0.18.1
|
||||
|
||||
### 构建信息
|
||||
- 本批次无代码变化,沿用 `v0.23.0` 的 Debug APK。
|
||||
|
||||
- `versionName`: `0.8.1`
|
||||
- `versionCode`: `24`
|
||||
## Windows x64 0.18.0+37
|
||||
|
||||
## v0.8.0 - 2026-04-23
|
||||
- 本批次无代码变化,沿用 `v0.23.0` 的 Debug 安装包。
|
||||
- Windows 端正在重构,预计 **2026 年 8 月 17 日**正式发布新版。
|
||||
- 当前安装包未进行代码签名,SmartScreen 可能显示未知发布者提示。
|
||||
|
||||
## ▶️ 播放链路与 NextEmby 兼容性增强
|
||||
## 兼容性与构建信息
|
||||
|
||||
- **起播请求精简**:生产环境移除额外的 `getPlaybackInfoRaw()` 诊断请求,减少起播时无意义的接口往返
|
||||
- **详情快照复用**:详情页、下载页和投屏链路优先复用已有 `BaseItemDto`,显著降低播放器兜底 `getItemById()` 的触发频率
|
||||
- **Emby 稳定流入口**:Emby / NextEmby 播放改为优先使用稳定的 `Videos/{id}/stream` 入口,并保留认证信息,避免被服务端识别为无效身份预加载
|
||||
- **熔断快速止损**:识别 `请重新登录`、`禁止回源`、`防穿透` 等 NextEmby 熔断信号后立即停止放大重试,减少短时间重复请求
|
||||
- Android 手机和 TV:Android 8.1(API 27)及以上。
|
||||
- Windows:Windows 10 或更高版本,x64。
|
||||
- 手机版构建命令:`./gradlew :app:assemblePreview`。
|
||||
- 手机版 Preview 签名证书 SHA-256:`bbd12fc3757222334f11f22a238012a4745a4423ac07b9dd76b3e887691505c6`。
|
||||
- 源码提交:`f7fdc71bb1134973121118930995f1a7f2895941`。
|
||||
- 源码标签:`v0.24.0`。
|
||||
- 自动验证:`:app:assemblePreview`、`:app:testDebugUnitTest`、`:core:testDebugUnitTest`、`:data:testDebugUnitTest` 与官网 65 项 Node 测试均通过。
|
||||
|
||||
## 💬 外挂字幕与播放器可用性修复
|
||||
### 已知项
|
||||
|
||||
- **Exo 外挂字幕修复**:外置字幕改为优先使用标准 `Videos/.../Subtitles/.../Stream.xxx` 地址,并对 `ass/ssa/subrip` 做更稳的格式请求策略
|
||||
- **mpv 外挂字幕支持**:新增 mpv 运行时外挂字幕注入,补齐此前部分 `srt/sub/ass` 无法显示的问题
|
||||
- **字幕入口统一鉴权**:Exo 与 mpv 的外挂字幕链路统一补足服务端可识别的鉴权参数,避免字幕流单独失败
|
||||
当前随包 Baseline Profile 主要覆盖冷启动与登录页;已登录后的首页、详情页与播放器基准数据仍需后续在真实服务器环境中继续采集。
|
||||
|
||||
## 🗂️ 详情页与目录体验优化
|
||||
---
|
||||
|
||||
- **媒体目录排序修复**:首页和服务器卡片进入的详情页,季列表和剧集目录会跟随用户默认排序偏好,不再退回 Emby 全局默认顺序
|
||||
- **播放器浮窗文案修正**:字幕切换浮窗现在正确显示“X 个字幕”,不再误用音轨数量文案
|
||||
# Entryway v0.23.0
|
||||
|
||||
## 🛠️ 构建与环境稳定性
|
||||
本批次为 Android 手机版弹幕曲线和全屏显示更新,采用 Debug 持续发布规则;Android TV 和 Windows 无代码变化,沿用已验证安装包。各端应用版本独立维护:Mobile `0.23.0`、TV `0.18.1`、Windows `0.18.0+37`。
|
||||
|
||||
- **Gradle JDK 固定**:在项目级固定 `org.gradle.java.home`,修复 Gradle 偶发误用不完整 JRE 导致的 `jlink` 构建失败
|
||||
- **调试包重新发布**:本次版本升级为 `0.8.0`,`versionCode` 提升至 `23`
|
||||
> 本批次是持续发布用的 **Debug 版本**,不是正式 Release 版本。正式版将在用户明确确认后单独构建和发布。
|
||||
|
||||
## 🎨 UI 逻辑整体重构
|
||||
## 版本信息
|
||||
|
||||
- **多服务器架构**:首页(Home)改为动态服务器切换器,服务器详情页(Server Detail)使用静态头部,两者职责分离
|
||||
- **私有服务器支持**:新增服务器访问控制,支持标记私有服务器,元数据(`isPrivate`、`displayName`)通过 `upsertSavedServer()` 持久化
|
||||
- **导航栏优化**:非 Home/Detail 页面强制显示底部导航栏,修复 FAB 定位和标题在浅色/深色模式下的可见性问题
|
||||
| 平台 | 应用版本 | 构建号 | 安装包 | SHA-256 |
|
||||
| --- | --- | ---: | --- | --- |
|
||||
| Android 手机版 | 0.23.0 | 44 | `entryway-debug-0.23.0.apk` | `3348b2b4de53e8bf3d14e5a154ee774cbc7db37cd5a9a57c0cfd8a47f31dd523` |
|
||||
| Android TV 版 | 0.18.1 | 39 | `Entryway-tv-debug-0.18.1.apk`(沿用 `v0.22.0`) | `f9a7ef9f71a92df4c0469e75c1e36863062631a9735da417b7b237d54b97e4ba` |
|
||||
| Windows x64 | 0.18.0 | 37 | `Entryway_0.18.0+37_Windows_x64_Setup.exe`(沿用 `v0.22.0`) | `b744a11a186350461dc6b4143df1fd5ee833bcc0ae1df6bff4339e1824333477` |
|
||||
|
||||
## 🔗 修复 302 重定向播放问题
|
||||
## Android 手机版 0.23.0
|
||||
|
||||
- **Nextemby / Redia CDN 直连播放**:全面适配 Nextemby 反向代理的 302 重定向机制,实现 STRM 文件通过 CDN 加速的直连播放
|
||||
- **Auth 认证修复**:将所有 API 请求的认证前缀从 `Emby` 统一为 `MediaBrowser`,匹配 Nextemby 的拦截要求
|
||||
- **PlaybackInfo 改为 POST**:使用 POST 请求 + DeviceProfile 请求体获取播放信息,与官方客户端行为一致
|
||||
- **取消 URL 预探测**:移除播放前的 URL 探测逻辑,直接将流媒体 URL 传递给 ExoPlayer,由播放器自行处理 302 重定向,与 NipaPlay 等成功客户端的实现方式对齐
|
||||
- **身份验证参数**:在流媒体 URL 中携带 `UserId` 和 `MediaSourceId`,确保 Nextemby 能正确识别用户身份
|
||||
### 弹幕曲线样式
|
||||
|
||||
## 🎬 修复 4K 高码率视频播放闪退问题
|
||||
- 弹幕设置新增“弹幕曲线样式”开关。
|
||||
- 关闭时使用平滑曲线,适合观察整段视频的弹幕密度趋势。
|
||||
- 开启时使用峰谷曲线,以更细的时间采样和折线表现突出弹幕密集时刻与剧情高潮。
|
||||
|
||||
- **内存溢出修复**:修正 ExoPlayer 缓冲策略,将 `prioritizeTimeOverSizeThresholds` 从 `true`(时间优先)改为 `false`(大小优先),并设置 150MB 内存缓冲上限,防止 80Mbps+ 4K 视频因缓冲过大导致 OOM 崩溃
|
||||
- **协程生命周期修复**:修复播放器界面位置更新协程在 ExoPlayer 释放后仍运行导致的 `CoroutinesInternalError` 崩溃
|
||||
- **CDN 连接增强**:优化 HTTP 客户端配置,增加读取超时(60s)、启用连接失败自动重试、配置连接池(4连接/5分钟保活),提升大文件流媒体播放的连接稳定性
|
||||
### 全屏弹幕显示
|
||||
|
||||
## 📋 其他改进
|
||||
- 修复播放器隐藏控制栏进入全屏后,第一行弹幕被顶部区域遮挡的问题。
|
||||
- 控制栏显示时继续保留完整避让距离;控制栏隐藏时仅保留必要顶部安全区,减少画面上方空白。
|
||||
|
||||
- 播放器位置更新频率从 100ms 调整为 250ms,降低 CPU 占用
|
||||
- 优化服务器列表管理逻辑,支持服务器显示名称自定义
|
||||
## Android TV 0.18.1
|
||||
|
||||
- 本批次无代码变化,沿用 `v0.22.0` 的 Debug 安装包。
|
||||
|
||||
## Windows x64 0.18.0+37
|
||||
|
||||
- 本批次无代码变化,沿用 `v0.22.0` 的 Debug 安装包。
|
||||
- 安装包未进行代码签名,SmartScreen 可能显示未知发布者提示。
|
||||
|
||||
## 兼容性
|
||||
|
||||
- Android 手机和 TV:Android 8.1(API 27)及以上。
|
||||
- Windows:Windows 10 或更高版本,x64。
|
||||
- Android 安装包使用项目 1.0 前的 Debug 变体和证书签名,Windows 安装包未签名。
|
||||
|
||||
## 构建信息
|
||||
|
||||
- 源码提交:`8d6778b42b7a5f351921248d3a3debde99142aad`
|
||||
- 源码标签:`v0.23.0`
|
||||
- 自动验证:`:app:assembleDebug`、官网静态页 65 项测试
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 63 KiB |
Reference in New Issue
Block a user