Skip to content

Releases

红果TV v1.0.43

Choose a tag to compare

@fyworld fyworld released this 11 Nov 15:21

红果TV v1.0.43

播放修复:真签名(对齐上游 0.1.31)

修复 11-11 起的断播问题。

根因:平台从 2026-11-11 起校验播放请求的真签名。此前版本的 x-argus 是占位值(base64 时间戳),加上伪造的 x-gorgon/x-helios/x-medusa 头,播放模型接口对这类请求一律静默返回空体(HTTP 200 + 0 字节)——注册、详情、目录都正常,唯独播放被丢弃。

修复(移植上游 0.1.31 的真签名实现):

  1. 新增 Argus.kt:fqapp 的 x-argus/x-ladon 真签名移植(ProtoBuf 编码、Simon 分组加密、Argus 551 布局、Ladon ARX 密码)
  2. 播放请求(GET video_tab 与 POST multi_video_model 两条路径)改用真签名头:x-argus/x-ladon/x-khronos/x-ss-req-ticket 按最终 query 重新生成,x-khronos 与 URL 的 _rticket 同源
  3. 移除全部占位签名头——真签名与占位头同时出现会被直接拒绝
  4. 目录、搜索、详情等非播放接口不受影响

线上验证:同一播放请求,旧签名返回 0 字节,真签名返回 17.5KB 完整播放模型(含 1080P 档)。

安装

与上一版同签名,可直接覆盖安装,收藏与观看记录保留。Android 7.0+(API 24)。

派生来源

GPL-3.0-only。派生自 N3urda/hongguoTV,详见 NOTICE.md。本应用不是内容平台官方客户端,仅供学习交流。

红果TV v1.0.42

Choose a tag to compare

@fyworld fyworld released this 10 Nov 15:34

红果TV v1.0.42

播放修复:对齐上游 0.1.30 身份架构

修复"上游能播、我们不能播"的问题。

根因:v1.0.38 引入的设备身份持久化(identity.json,register-once-keep-forever)把 TV 锁死在一个被平台风控拉黑的旧 device_id 上——空响应屏蔽按设备身份生效,旧身份每次启动被复用,永远播不了。

修复(对齐上游 0.1.30,经逐文件逐字段对比确认):

  1. 移除设备身份持久化:每次冷启动注册全新匿名身份(与上游一致)。被拉黑的旧身份不再被复用,新身份即时恢复播放。
  2. POST 播放请求 device_level 3→1:对齐上游取值。
  3. 签名链路(signPlayback/medusa/deviceProto/processNonce)与版本钉(73932/7.3.9.32)经逐字段对拍与上游完全一致,未改动。

升级提示:安装后请完全退出 App 再冷启动一次(旧 identity.json 会被自动忽略,无需手动清理)。

安装

与上一版同签名,可直接覆盖安装,收藏与观看记录保留。Android 7.0+(API 24)。

派生来源

GPL-3.0-only。派生自 N3urda/hongguoTV,详见 NOTICE.md。本应用不是内容平台官方客户端,仅供学习交流。

红果TV v1.0.41

Choose a tag to compare

@fyworld fyworld released this 09 Nov 17:01

红果TV v1.0.41

账号双向同步(v1.0.32~41 累积)

  • 手机红果 App ↔ 电视端全量双向同步:收藏、观看记录、我的预约
  • 预约独立成页(导航栏"最近观看"后):已上线可播放,待上线显示卡片与上线时间
  • 删除语义:电视端删除记录/取消收藏不再被手机端"复活"(tombstone 机制;重新观看/收藏自动撤销)
  • 同步失败可见(提示条 + 自动重试),进入收藏/最近观看/预约页 90 秒节流自动同步
  • 协议限制说明:云端无"删除观看记录"端点(上游也没有),观看记录删除仅本机生效

封面显示修复(v1.0.38)

  • 修复同步来的收藏/最近观看/预约的剧集封面在 Android 7/8 电视上全部空白的问题
  • 根因:账号接口返回 HEIC 格式封面(HEIF 解码需 Android 9+);现改写为 byteimg 无签名 JPEG(同一图源,永不过期)
  • 旧版本已同步的数据同样自动修复

焦点修复(v1.0.39~41)

  • 预约页"刷新预约"不再跳回首页,刷新后焦点停在原位,状态行实时显示读取进度
  • 从导航栏滑到"我的预约"后,数据加载完成不再把焦点抢到第一张卡片——后台数据落地永远不移动用户焦点
  • 未登录点"刷新预约"现在会弹出提示(原来静默无反应)

安装

与上一版同签名,可直接覆盖安装,收藏与观看记录保留。Android 7.0+(API 24)。

派生来源

GPL-3.0-only。派生自 N3urda/hongguoTV,详见 NOTICE.md。本应用不是内容平台官方客户端,仅供学习交流。

红果TV v1.0.30

Choose a tag to compare

@fyworld fyworld released this 07 Nov 01:43

红果TV v1.0.30

播放诊断增强:错误信息携带请求路径明细。

更新内容

  • 播放错误诊断行:播放失败时错误信息携带本轮每条请求路径的结果明细(接口类型 · 主机代号 · HTTP 状态 · 响应字节数 · 协议),电视上截图即可精确定位是哪条路径、哪个主机返回了什么,不再需要连接电脑抓包。诊断信息不含任何地址、请求头或设备参数,无隐私泄露风险。
  • 片尾预取提速:后台预取下一集的超时预算收紧(连接 4 秒 / 读取 4 秒 / 总计 8 秒),慢请求不再占用片尾预取窗口,预取命中率更高。
  • 空响应错误信息同时标注身份轮换状态(已轮换/轮换失败),配合诊断行可区分"路径问题"与"身份问题"。

安装

与上一版同签名,可直接覆盖安装,收藏与观看记录保留。Android 7.0+(API 24)。

派生来源

GPL-3.0-only。派生自 N3urda/hongguoTV,详见 NOTICE.md。本应用不是内容平台官方客户端,仅供学习交流。

红果TV v1.0.29

Choose a tag to compare

@fyworld fyworld released this 07 Nov 00:56

红果TV v1.0.29

连播修复:签名算法修正 + 换集自愈 + 片尾预取。

更新内容

  • 修复"只能播一集"(关键修复):与上游最新实现逐行对拍,发现并修复三处签名算法错误(hash 扩展轮取值、签名分支选择、medusa 报文指纹字段)。修复后用上游 12 组固定测试向量逐一验证,全部通过。此前签名虽能通过校验但与官方客户端存在可辨识差异,是风控识别的重点。
  • 换集自愈(轮内身份轮换):服务端按"设备身份 × 接口路径"限制请求次数,一个身份的额度用完后所有请求返回空数据。本版在额度耗尽时立即更换设备身份并在同一次调用内重试——换集失败从"等半分钟报错"变为"一次调用内自动恢复"。
  • 片尾预取下一集:播放临近片尾时后台提前获取下一集片源(只走主播放刚成功的路径,不额外消耗额度),换集瞬间起播。
  • 路由健康记忆:记住每条接口路径的最近结果,刚返回空数据的路径 30 秒内不再重试,成功过的路径优先——不再反复撞已知死路浪费额度。
  • 进程级缓存:播放模型缓存 10 分钟有效且全进程共享,切回刚看过的集直接命中,零请求。
  • 设备身份持久化:重启应用不再重新注册,减少注册接口消耗。

安装

与上一版同签名,可直接覆盖安装,收藏与观看记录保留。Android 7.0+(API 24)。

派生来源

GPL-3.0-only。派生自 N3urda/hongguoTV,详见 NOTICE.md。本应用不是内容平台官方客户端,仅供学习交流。

红果TV v1.0.23

Choose a tag to compare

@fyworld fyworld released this 05 Nov 12:52

红果TV v1.0.23

播放接口修复:请求签名 + 解析防御。

更新内容

  • 播放请求加签名(关键修复):服务端已开始强制播放接口校验请求签名(x-gorgon/x-khronos/x-ladon/x-argus/x-helios/x-medusa 六头签名链)。此前播放请求不签名也能通过,本次风控升级后不签名的请求全部返回空数据——表现为"官方 APP 能看、本应用无法播放"。本版为两条播放路径(video_tab 与旧接口)全部加上签名链,与官方客户端行为对齐。
  • 解析失败防御:服务端风控有时返回非空但非 JSON 的内容(拦截页),此前会导致解析异常直接打断播放通道切换。本版将解析失败转为友好提示,并保证三通道切换链(App API → 旧接口 → 网站 MP4)完整走完,任何单通道失败不再影响后续通道。
  • 播放失败页诊断信息保留(机型 · 系统版本 · 应用版本 · 恢复计数 · 错误类别),截图即可定位问题。

安装

与上一版同签名,可直接覆盖安装,收藏与观看记录保留。Android 7.0+(API 24)。

派生来源

GPL-3.0-only。派生自 N3urda/hongguoTV,详见 NOTICE.md。本应用不是内容平台官方客户端,仅供学习交流。

红果TV v1.0.20

Choose a tag to compare

@fyworld fyworld released this 05 Nov 11:55

红果TV v1.0.20

播放失败页新增结构化诊断信息。

更新内容

  • 播放失败页诊断行:播放失败时,错误页新增一行结构化诊断信息(机型 · 系统版本 · 应用版本 · 恢复计数 · 错误类别),截图即可定位失败根因,不再折叠为笼统提示。错误类别区分:播放器错误码(exo=)、接口空响应(empty,含身份轮换标记 rotated=1)、设备注册失败(register)等。
  • 修复部分电视上播放失败提示无法定位原因的问题(模拟器正常、电视失败的场景现可通过诊断行区分解码/网络/证书根因)。

安装

与上一版同签名,可直接覆盖安装,收藏与观看记录保留。Android 7.0+(API 24)。

派生来源

GPL-3.0-only。派生自 N3urda/hongguoTV,详见 NOTICE.md。本应用不是内容平台官方客户端,仅供学习交流。

红果TV v1.0.19

Choose a tag to compare

@fyworld fyworld released this 05 Nov 11:26

红果TV v1.0.19

播放接口修复:身份轮换自愈 + bytevc2 兼容模型。

更新内容

  • 播放身份轮换自愈:服务端会按设备身份选择性屏蔽播放接口(被屏蔽身份所有域名持续空响应,换域名无法逃逸,只有全新身份能恢复)。本版在连续两轮空响应后(约 25 秒)自动重新注册一次匿名设备身份再继续恢复——被屏蔽时从"耗尽恢复预算失败"变为约 25–35 秒自动恢复。任何一次播放成功即复位;同一失败期至多轮换一次;轮换后仍失败照旧走原有 3 次自动恢复。
  • bytevc2 兼容模型:当片源所有档位都是电视无法解码的 bytevc2 编码时,自动用官方播放器的兼容路径(codec_type=0 + force_codec=h264)再取一次片源,实测可取回可播的 H.265/H.264 档位。至多一次额外请求,有可用档位不触发。
  • 播放失败诊断信息在已轮换身份后仍失败时带 rotated=1 标记,截图反馈可定位。

安装

与上一版同签名,可直接覆盖安装,收藏与观看记录保留。Android 7.0+(API 24)。

派生来源

GPL-3.0-only。派生自 N3urda/hongguoTV,详见 NOTICE.md。本应用不是内容平台官方客户端,仅供学习交流。

红果TV v1.0.18

Choose a tag to compare

@fyworld fyworld released this 02 Nov 15:34

红果TV v1.0.18

更新内容

  • 播放接口迁移:播放主通道切换到官方新接口(video_tab),修复近期播放失败;清晰度仍为 1080P(新接口当前仅提供这一档可播放资源)
  • 题材条带修复:题材分类条带如实显示网站分类列表,移除"穿越"题材入口(该题材的数据源已全部失效:AI 分类页不存在、AI 剧搜索无结果、feed 通道被风控间歇性拦截)
  • 死代码清理:移除 AI feed 通道(dragon UA、本地过滤、36 行轮次)等已失效链路

安装

与上一版同签名,可直接覆盖安装,收藏与观看记录保留。Android 7.0+(API 24)。

派生来源

GPL-3.0-only。派生自 N3urda/hongguoTV,详见 NOTICE.md。本应用不是内容平台官方客户端,仅供学习交流。

红果TV v1.0.17

Choose a tag to compare

@fyworld fyworld released this 01 Nov 23:25

红果TV v1.0.17

本版累计十二项修复与功能,覆盖更新器、播放/推荐接口、穿越题材链路、焦点操作与收藏管理。

更新与网络

  • 更新器国内镜像修复:镜像链重排扩充为 5 通道(GitHub 直连 → ghfast.top → gh.llkk.cc → gh-proxy.com → ghproxy.net),实测可用镜像优先;请求 UA 补浏览器前缀(裸 UA 被部分镜像 403)。
  • GitHub 直连快速失败:直连通道检查 8 秒超时(原 25 秒挂等),不通立即降级镜像;直连下载按体量动态限时,镜像保持宽松超时。

播放与推荐接口(服务端风控应对)

  • 设备注册链路:播放与推荐请求携带服务端注册身份(device_register),未注册 device_id 自 10 月底起一律返回空数据。
  • 版本钉版 73932:feed 请求版本号与注册链路对齐(原 73532 已被服务端拉黑)。
  • AI 剧 feed 专用 UA:ai_series 通道只认 com.dragon.read UA(番茄读书产品线),其余链路保持 phoenix.read。
  • feed 凑满循环中途容错:续翻轮空响应不再丢弃已收集剧集,整页报错降级为部分内容。
  • AI 通道每轮 36 行:单轮产出翻倍,请求轮数与风控暴露减半。

穿越题材

  • 真人剧穿越迁移网站搜索:215 部、真分页几十页、无风控无签名,彻底绕开 App 接口;genre=205 过滤保证纯真人剧。
  • 穿越条目前置:条带里紧跟"全部"第一位,不再埋在 26 个按钮末尾。
  • 空分类容错:服务端无内容的分类(如动作冒险)显示空页面,不再误报"分页信息异常"。
  • 每页三页合并:搜索每页 10 行合并为每主题页约 27 部,网格密度与其它题材一致。
  • 题材持久化缓存:题材列表与"全部"一样落盘缓存(7 天),切换题材秒显上次列表、后台静默刷新。

焦点操作

  • 题材条带焦点循环:右到尾跳回最前、左到头跳到最后,条带滚动自动跟随。
  • 首页分区焦点循环:接着看/热门发现各分区行内首尾互指;焦点卡片超出可视窗时行自动滚动跟随;循环跳转直接生效,不再受 HorizontalScrollView 半屏距离检查拖累(长行不再"按两下")。

收藏管理

  • 收藏页管理功能:新增"管理收藏"按钮,可单条取消收藏(进度保留)或一键清空全部收藏(观看记录保留),与"最近观看"页的管理记录体验一致。

安装

与上一版同签名,可直接覆盖安装,收藏与观看记录保留。Android 7.0+(API 24)。

派生来源

GPL-3.0-only。派生自 N3urda/hongguoTV,详见 NOTICE.md。本应用不是内容平台官方客户端,仅供学习交流。