Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e92af5d83d | ||
|
|
78f6683ff1 | ||
|
|
eac5511e86 | ||
|
|
bede8a7a14 | ||
|
|
bc51ab8f46 |
@@ -3,14 +3,13 @@
|
||||
</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。</p>
|
||||
<p align="center">A multi-server aggregation media client for Jellyfin & Emby — Android, Android TV & Windows.</p>
|
||||
<p align="center"><a href="https://www.yamby.cn">官方网站 | 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/Platform-Android%20%7C%20Android_TV%20%7C%20Windows-3DDC84?style=flat-square" alt="Platform">
|
||||
<img src="https://img.shields.io/badge/Server-Jellyfin%20%7C%20Emby-AA0000?style=flat-square" alt="Server">
|
||||
<img src="https://img.shields.io/badge/License-MIT-blue?style=flat-square" alt="License">
|
||||
</p>
|
||||
|
||||
@@ -18,83 +17,90 @@
|
||||
|
||||
## 最新版本 | Latest Release
|
||||
|
||||
- **手机版 v0.17.0**:完整多弹幕 API 管理、窄屏布局修复与按服务隔离的匹配和缓存
|
||||
- **TV 版 v0.16.0**:移植多弹幕 API、重排遥控器弹窗并修复弹幕穿透菜单与焦点问题
|
||||
- **Windows v0.14.0**:提供 Windows x64 安装器、硬件解码策略与字幕/资源作用域修复
|
||||
- **手机版 APK**:[`entryway-debug-0.17.0.apk`](https://github.com/JackYucongjia/Entryway_Release/releases/download/v0.17.0/entryway-debug-0.17.0.apk)
|
||||
- **TV 版 APK**:[`Entryway-tv-debug-0.16.0.apk`](https://github.com/JackYucongjia/Entryway_Release/releases/download/v0.17.0/Entryway-tv-debug-0.16.0.apk)
|
||||
- **Windows x64**:[`Entryway_0.14.0+33_Windows_x64_Setup.exe`](https://github.com/JackYucongjia/Entryway_Release/releases/download/v0.17.0/Entryway_0.14.0%2B33_Windows_x64_Setup.exe)
|
||||
**全局标签 `v0.19.1`**(各端应用版本独立)
|
||||
|
||||
| 平台 | 应用版本 | 构建号 | 下载 |
|
||||
| --- | --- | --- | --- |
|
||||
| Android 手机版 | 0.19.1 | 39 | [`entryway-debug-0.19.1.apk`](https://gitea.yamby.cn/yusheng/Entryway_Release/releases/download/v0.19.1/entryway-debug-0.19.1.apk) |
|
||||
| Android TV 版 | 0.17.0 | 37 | [`Entryway-tv-release-0.17.0.apk`](https://gitea.yamby.cn/yusheng/Entryway_Release/releases/download/v0.19.1/Entryway-tv-release-0.17.0.apk) |
|
||||
| Windows x64 | 0.17.0 | 36 | [`Entryway_0.17.0+36_Windows_x64_Setup.exe`](https://gitea.yamby.cn/yusheng/Entryway_Release/releases/download/v0.19.1/Entryway_0.17.0+36_Windows_x64_Setup.exe) |
|
||||
|
||||
> Android 手机版与 TV 版沿用 1.0 前的调试证书签名约定,Windows 安装包未签名;首次运行可能触发系统安全提示,需手动确认。
|
||||
>
|
||||
> ⚠️ v0.19.0 的手机安装包误用了正式发布证书,无法覆盖安装。0.18.x 及更早版本可直接覆盖安装 0.19.1;若已安装 v0.19.0,需先卸载再安装。
|
||||
|
||||
- **变更日志**:[`RELEASE_NOTES.md`](RELEASE_NOTES.md)
|
||||
- **全部版本**:[Gitea Releases](https://gitea.yamby.cn/yusheng/Entryway_Release/releases) | [GitHub Releases](https://github.com/JackYucongjia/Entryway_Release/releases)
|
||||
|
||||
## 概述 | Overview
|
||||
|
||||
**Entryway** 是一个面向自建媒体服务器用户的 Android 客户端,核心设计理念是 **多服务器聚合**——在一个统一的界面中管理和浏览你所有的 Jellyfin / Emby 服务器。
|
||||
**Entryway** 是一个面向自建媒体服务器用户的跨平台客户端,覆盖 **Android 手机**、**Android TV** 和 **Windows** 三端。核心设计理念是 **多服务器聚合**——在一个统一的界面中管理和浏览你所有的 Jellyfin / Emby 服务器。
|
||||
|
||||
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.
|
||||
Entryway is a cross-platform client for self-hosted media server users, available on **Android Mobile**, **Android TV**, and **Windows**. Its core philosophy is **multi-server aggregation** — managing and browsing all your Jellyfin / Emby servers from a single, unified interface.
|
||||
|
||||
**官网**:[www.yamby.cn](https://www.yamby.cn)
|
||||
|
||||
## 核心特性 | Features
|
||||
|
||||
### 🖥️ 多服务器管理
|
||||
- 添加多个 Jellyfin / Emby 服务器,一键快速切换
|
||||
- 服务器卡片显示用户头像、用户名、服务器地址
|
||||
- 长按菜单:重新登录、服务器线路、修改图标、修改备注、设为私密、修改密码、编辑、删除
|
||||
- 溢出菜单:搜索、排序(默认/名称/最近使用)、网格/列表布局切换、显示选项
|
||||
- 私密服务器:标记后默认隐藏,需手动开启显示
|
||||
- 冷启动离线恢复:服务器不可用时不清除账号
|
||||
|
||||
### 🏠 首页即服务器
|
||||
- 首页直接展示当前活跃服务器的媒体库内容
|
||||
- 左上角显示当前服务器名,点击即可切换到其他非私密服务器
|
||||
- 支持精选轮播(Featured Carousel)和无轮播两种模式
|
||||
### 🎬 双引擎播放器(Android)
|
||||
- **ExoPlayer**:默认引擎,基于 Media3 + FFmpeg 扩展
|
||||
- **mpv**:高兼容性引擎,含 libdvdread/libdvdnav/libbluray
|
||||
- 自动容错切换,保留播放进度
|
||||
- 解码模式:SW / HW / HW+ / DV-SW
|
||||
|
||||
### 🎬 双引擎播放器
|
||||
- **ExoPlayer 引擎**:默认播放引擎,基于 Media3 + Jellyfin FFmpeg 扩展
|
||||
- **mpv 引擎**:备用高兼容性引擎,基于 libmpv,支持更多编解码格式
|
||||
- 播放失败时自动提供引擎切换建议,支持手动一键切换
|
||||
- 切换引擎时自动保持播放进度
|
||||
- 统一 User-Agent:`Entryway/{version} (android; {api})`
|
||||
### 💬 多弹幕服务
|
||||
- 弹弹Play 官方、LogVar 弹幕 API、其他弹弹Play 兼容服务
|
||||
- 按优先级有序故障回退,数据源严格隔离
|
||||
- 自动匹配、手动搜索、本地弹幕、LRU 缓存
|
||||
- 三端支持(手机 / TV / Windows)
|
||||
|
||||
### ⏩ 播放控制
|
||||
- **倍速播放**:0.1x ~ 5.0x 滑动条 + 快速预设(0.5x / 1.0x / 1.5x / 2.0x / 3.0x)
|
||||
- **长按快速倍速**:长按屏幕进入手动短时间高速播放
|
||||
- **手势控制**:左右滑动快进快退、左侧上下滑动调亮度、右侧上下滑动调音量
|
||||
- **画面比例**:循环切换适应/填充/16:9/4:3 等比例模式
|
||||
- **锁屏**:锁定控制界面,防止误触
|
||||
- **剧集导航**:上一集/下一集,播放列表(仅剧集)
|
||||
### 💿 实验性 DVD / Blu-ray ISO
|
||||
- 未加密原盘本地与远程播放
|
||||
- 不支持时自动回退服务器转码
|
||||
|
||||
### 🔧 mpv 引擎专属
|
||||
- **解码模式切换**:SW(软解)/ HW(硬解)/ HW+(硬解+拷贝)一键循环切换
|
||||
- 字体自动加载,支持字幕渲染
|
||||
### 📺 Android TV
|
||||
- 遥控器全键盘搜索、二维码手机输入
|
||||
- 完整弹幕、扫码录入服务器、首页缓存兜底
|
||||
|
||||
### 🔊 高级音频
|
||||
- Apple Spatial Audio 空间音频检测与启用
|
||||
- HDR / Dolby Vision 能力检测与自动适配
|
||||
### 🪟 Windows
|
||||
- Flutter + MediaKit (libmpv) + Rust 弹幕引擎
|
||||
- 多服务器、收藏、详情、跨服搜索、离线下载
|
||||
- Chromecast/DLNA 投屏、Inno Setup 安装器
|
||||
|
||||
### 🎨 全局主题系统
|
||||
- 支持 **跟随系统** / **浅色** / **深色** 三种主题模式
|
||||
- 基于 Material 3 动态配色方案
|
||||
|
||||
### 🌐 完整国际化
|
||||
- 界面支持中文(简体/繁体)和英文
|
||||
- 50+ 影视类型名称客户端翻译
|
||||
- 根据系统语言自动切换
|
||||
### 🎨 设计与国际化
|
||||
- 空间化 / 玻璃态视觉语言,Material 3 动态配色
|
||||
- 完整中文(简体/繁体)和英文本地化
|
||||
|
||||
### 📥 离线下载
|
||||
- 队列化下载管理,支持暂停/恢复/取消
|
||||
- 季度/剧集批量下载,下载前显示存储空间预估
|
||||
- 无网络时自动切换到离线内容模式
|
||||
- 队列化管理,批量下载,存储空间预估
|
||||
- 无网络时自动切换离线内容模式
|
||||
|
||||
## 技术栈 | Tech Stack
|
||||
## 平台要求 | Requirements
|
||||
|
||||
| 类别 | 技术 |
|
||||
|------|------|
|
||||
| **语言** | 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 手机版 | Android 8.1 (API 27) |
|
||||
| Android TV 版 | Android 8.1 (API 27) |
|
||||
| Windows | Windows 10 x64 |
|
||||
|
||||
## 贡献 | Contributing
|
||||
## 更新检测 | Update Check
|
||||
|
||||
欢迎提交 Issue 和 Pull Request。较大的功能开发建议先开 Issue 讨论范围。
|
||||
客户端内置更新检测,优先从 Gitea 获取最新版本,连接失败时自动降级到 GitHub。
|
||||
|
||||
## 源码仓库 | Source Code
|
||||
|
||||
- **GitHub**:[github.com/JackYucongjia/Entryway](https://github.com/JackYucongjia/Entryway)
|
||||
- **Gitea**:[gitea.yamby.cn/yusheng/Entryway](https://gitea.yamby.cn/yusheng/Entryway)
|
||||
|
||||
## 许可证 | License
|
||||
|
||||
本项目基于 MIT 许可证开源。
|
||||
|
||||
手机端弹幕实现参考了 MIT 许可的 [AimesSoft/NipaPlay-Reload](https://github.com/AimesSoft/NipaPlay-Reload)。
|
||||
Windows 客户端基于 NipaPlay-Reload `v1.10.13` 构建,保留上游 MIT 许可。
|
||||
|
||||
+26
-24
@@ -1,36 +1,38 @@
|
||||
# Entryway Mobile 0.18.0 / TV 0.16.1 / Windows 0.15.0+34
|
||||
# Entryway v0.19.1
|
||||
|
||||
本次批次为 Android 手机、Android TV 与 Windows 三端同批发布。各端应用版本不同,全局标签 `v0.18.0` 仅为本批次 ID。
|
||||
手机版补丁批次:修正 v0.19.0 手机安装包的签名证书,使其可以从 0.18.x 直接覆盖安装升级。Android TV 与 Windows 本批次无变化。
|
||||
|
||||
## 版本与校验
|
||||
## 版本信息
|
||||
|
||||
| 平台 | 应用版本 | 构建号 | 文件名 | SHA-256 |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| Android Mobile | 0.18.0 | 37 | entryway-release-0.18.0.apk | `e3c1813d37aebee4612db0436e22a8894236e0d04dcb9e787a9b8f11b39e07fd` |
|
||||
| Android TV | 0.16.1 | 36 | Entryway-tv-release-0.16.1.apk | `8bb5d9a2787755469af3cc66839c32be318035d353f22a66620798026ba6953c` |
|
||||
| Windows x64 | 0.15.0 | 34 | Entryway_0.15.0+34_Windows_x64_Setup.exe | `e9e45536fe981d117f8f261fe82a4e1fbd5b01a1ff515dfdc110253b8992f21b` |
|
||||
| 平台 | 应用版本 | 构建号 | 安装包 | SHA-256 |
|
||||
| --- | --- | ---: | --- | --- |
|
||||
| Android 手机版 | 0.19.1 | 39 | `entryway-debug-0.19.1.apk` | `93b2f5a65428784e44e98bc6791110ea2b638bca378140bbf9f9c8bcafdb02eb` |
|
||||
| Android TV | 0.17.0 | 37 | `Entryway-tv-release-0.17.0.apk` | `b69e0a02de333a6f35fd0c5a167cbbd47aaf73e50637203a7fd6469f51b93066` |
|
||||
| Windows x64 | 0.17.0 | 36 | `Entryway_0.17.0+36_Windows_x64_Setup.exe` | `88152926419a6f6dc29e3380cd9469c86d366a516aec56fe4a7013aa3e7a774f` |
|
||||
|
||||
> Windows 安装包为**未签名**产物,首次运行可能触发 SmartScreen 提示,需手动确认。
|
||||
## 升级须知
|
||||
|
||||
## Android Mobile 0.18.0
|
||||
- v0.19.0 的手机安装包误用了正式发布证书签名,与此前所有公开版本不一致,导致无法覆盖安装。本批次已改回项目 1.0 前一直使用的调试证书。
|
||||
- **仍在使用 0.18.x 或更早版本**:可直接下载本批次手机包覆盖安装。
|
||||
- **已经卸载旧版并安装了 v0.19.0**:需要先卸载 0.19.0 再安装本版本,两者签名证书不同,无法互相覆盖。
|
||||
- Android TV 与 Windows 用户不受影响,无需重新安装。
|
||||
|
||||
- 详情页多版本影片可选择要播放的版本,选择贯穿播放全链路(Emby / Jellyfin 均生效)。
|
||||
- 音轨/字幕弹窗内可按文件调节音频延迟和字幕延迟,按媒体项持久化。
|
||||
- 带样式 ASS 字幕在 ExoPlayer 下提示样式降级,并提供「覆盖字幕自带样式」开关;PGS/VOBSUB 图形字幕单独提示。
|
||||
- 完整简体中文 / 英文本地化;语言切换改用应用自有存储,切换即时生效。
|
||||
- 修复登录页浅色模式文字不可见;修复字幕样式设置需重开播放器才生效;去除详情页海报毛玻璃。
|
||||
## Android 手机版 0.19.1
|
||||
|
||||
## Android TV 0.16.1
|
||||
- 修复安装包签名证书,恢复从旧版本覆盖安装升级的能力。
|
||||
- 打包变体改回 debug,与 v0.18.x 及更早公开版本的发布约定一致。
|
||||
- 功能与 0.19.0 完全相同,无新增功能或行为变更。
|
||||
|
||||
- 详情页对含多个版本的影片显示版本切换按钮,所选版本贯穿播放链路。
|
||||
- 注:本版 TV 多版本选择尚未在电视端真机充分验证。
|
||||
## Android TV 0.17.0
|
||||
|
||||
## Windows 0.15.0
|
||||
- 本批次无变化,沿用 v0.19.0 的 0.17.0 安装包。
|
||||
|
||||
- 首页各分区新增“查看全部”浏览页。
|
||||
- 更新检测与安装策略完善。
|
||||
## Windows x64 0.17.0
|
||||
|
||||
## 已知问题
|
||||
- 本批次无变化,沿用 v0.19.0 的 0.17.0+36 安装包。
|
||||
|
||||
- 图形字幕(PGS/VOBSUB)在 ExoPlayer 下颜色不可调,属播放器框架限制,可切换 mpv 内核。
|
||||
- Windows 安装包未签名。
|
||||
## 兼容性与已知问题
|
||||
|
||||
- Android 最低要求为 Android 8.1(API 27);Windows 最低要求为 Windows 10 x64。
|
||||
- Android 手机与 TV 安装包沿用项目 1.0 前的调试证书签名约定,均为未混淆的公开构建。
|
||||
- Windows 安装包未进行代码签名,SmartScreen 可能显示未知发布者提示。
|
||||
|
||||
Reference in New Issue
Block a user