Files
gangao-tv/CHANGELOG.md
T

7.3 KiB
Raw Blame History

更新日志

包名:com.iptv807.tv | Android 5.0+ 每个版本的 APK 都在 apk/ 目录与 Releases 中保留。


v9.2.0(2026-10-08)→ ✨新功能 / 🐛修复

  • 🐛 从设置页或桌面返回时,直接重连当前流(不再依赖 play(),避免画面定格)
  • ✨「▶ 继续播放」按钮改为强制重连同一路流,恢复更快更可靠

v9.1.0(2026-10-08)→ 🐛修复

  • 修复切台看不到「正在加载」和计时:切台时旧频道仍在播放,它一有缓冲波动就触发播放回调,把刚弹出的加载遮罩立刻隐藏了(经常一闪而过甚至看不到)
  • 加 awaitingStart 标记:只有这次要播的新频道真正起播才收起加载提示,旧频道的回调不再影响
  • 加载遮罩显示时 bringToFront(),保证不被其它浮层挡住

v9.0.0(2026-10-08)

  • 修复设置页/商店页看不到选中项:原来用 setBackgroundColor 给按钮设固定底色,把系统自带的焦点高亮覆盖掉了
  • 所有可操作项改为获得焦点即变蓝(StateListDrawable):卡密输入框、激活、支付成为会员、开机自启动开关
  • 商店页同样处理,并改为遥控手动导航:上下选套餐、左右切支付宝/微信、OK 购买;选中的套餐行蓝底
  • 设置页内容变长,加了滚动容器,下面被挡住的项也能滚到

v8.9.0(2026-10-08)

  • 修复「换不了台」:上一版把方向/确认键交给系统焦点处理,在部分电视盒子上焦点根本进不了列表 → 按键全部空转
  • 改为完全手动的选择模型:高亮由 App 自己画(选中行蓝底白字),上下移动、左右切列、OK 确认全部由按键逻辑直接处理,不再依赖系统焦点机制
  • 面板打开时吞掉其它按键,避免误触发换台;分组列上下移动时确认才会切换("⚙ 设置"停在上面不误进)
  • 上下移动频道时会顺手预取那一行的源

v8.8.0(2026-10-08)

  • 实测源站瓶颈:m.iptv807.com 抓播放页需 1~7 秒,且失败率约 50%(半路断连/超时);token 与频道绑定(换频道 id 复用同一 token 返回 404),所以每次切到没打开过的频道都必须抓一次源
  • 修复"切台反而接不了":解析原用全局锁,后台预取占锁时用户切台要排队 → 改为每频道独立锁
  • 缓存有效期 8 分钟 → 30 分钟(已打开过的频道切回秒开)
  • 预取从「整组抓」改为「只抓当前高亮的那一个频道」(1.2 秒去抖动),不再压垮源站
  • 全部线路失败时自动强制刷新源再试一轮(应对缓存 token 过期)
  • 加载提示显示频道名:正在加载「TVB翡翠台」3 秒…

v8.7.0(2026-10-08)

  • 修复退出没有提示:AlertDialog 在电视的全屏主题下创建失败(异常被兜底逻辑吞掉 → 直接退出、无提示)
  • 退出确认改为App 内自绘弹层:半透明遮罩 + 卡片 + 「取消 / 退出」两个按钮,不依赖系统对话框主题
  • 按钮有焦点高亮(获得焦点变蓝),默认焦点放在「取消」上防误触;返回键 = 取消

v8.6.0(2026-10-08)

  • 修复遥控器无法在选台面板操作:原因是面板打开时把方向键/确认键全拦截了,焦点根本进不了列表
  • 面板打开后只接管 返回 / MENU(收藏),方向键与确认键全部交给列表自己处理
  • 频道列表与分组列表加蓝色焦点高亮(方向键经过的行变蓝),按 OK 即播放
  • 打开面板时焦点自动进入频道列表并定位到当前频道;选中分组后焦点自动跳到频道列表
  • 列表行改为白色文字、透明底(原来系统默认样式在暗色主题下几乎看不出选中)

v8.5.0(2026-10-08)

  • 测试卡密:88531 —— 在设置页「卡密激活」输入即可,直接永久授权(本地判定,不走服务器),显示「测试卡:永久有效」
  • 可用于测试购买/时长逻辑,正式卡密流程不受影响

v8.4.0(2026-10-08)

  • 设置页新增「卡密激活」:输入框 + 激活按钮,验证通过后立即写会员状态
  • 从设置返回播放页立即生效(onResume 重新读取会员状态),无需重启
  • 激活链路已实测:生成月卡 → /api/public/verify 返回 valid / 月卡 / 30 天 / 到期时间

v8.3.0(2026-10-08)

  • 切台提速:去掉切台前逐条线路预探测(原最大拖累,每条最长等 4 秒),改为直接开播 + 失败自动换线
  • 起播缓冲调小(适配直播流):setBufferDurationsMs(1500, 12000, 500, 1000)
  • 打开选台面板时后台预取该组频道源,切台秒开
  • 加载提示带实时计时:正在加载 N 秒,精彩继续…(一直走到出画面)
  • 播放期间屏幕常亮(FLAG_KEEP_SCREEN_ON)

v8.2.0(2026-10-08)

  • 连滑两次退出前弹窗确认(退出 / 取消)

v8.1.0(2026-10-08)

  • 连续滑动两次完全退出 App(1.5 秒内两次,位移>120px/0.8s 内判定);第一次滑动提示「再滑动一次退出应用」

v8.0.0(2026-10-08)

  • 修复从桌面返回画面卡住:onResume 自动续播 + 屏幕中央「▶ 继续播放」按钮(遥控 OK 可点,重连当前频道)

v7.9.0(2026-10-08)

  • 修复套餐列表空白:接口不返回 status 字段,原代码 optInt("status")==1 把 4 个套餐全过滤掉
  • 套餐按天数排序;无套餐时给出提示
  • 已验证下单链路:card-types → orders → orders/query 全部正常

v7.8.0(2026-10-08)

  • 抓源加 3 次重试(15s 连接 / 20s 读取),抗网络抖动
  • 失败自动重连(网络波动,正在重试 n/3)+ 内存/磁盘双缓存兜底
  • 缓存线路全失效时自动强制刷新源

v7.7.0(2026-10-08)

  • 加载提示文案改为「正在加载,精彩继续…」

v7.6.0(2026-10-08)

  • 按需求去掉加载计时(v8.3.0 已按要求加回)

v7.5.0(2026-10-08)

  • 加载计时不再 12 秒后冻结成固定文字
  • 修复右上角「今日免費」计时不走动(无人累计用量)

v7.4.0(2026-10-08)

  • 失败画面信息全开:版本号 + 逐条线路实测状态码 + token 片段
  • 播放错误 2004 = HTTP 状态码错误(非网络不通),用于区分故障类型

v7.3.0(2026-10-08)★ 播放关键修复

  • 真根因:混淆块里 xx = yy 复制语句导致取「第 2 个 32 位值」正好等于密钥 → 旧 token 替换失败 → 地址留着过期 token → 全部 404
  • 改为取「第一个不等于密钥」的值 + token 兜底替换
  • 解释了「台少时能播」:那是编译期写死的地址,不是运行时解析

v7.2.0(2026-10-08)

  • 默认播放 TVB翡翠台
  • 启动自检显示解析/拉流状态

v7.1.0(2026-10-08)

  • 去掉解密结果多做的一步 URLDecoder(把 %2B 解成 + → 服务端当空格 → 404)
  • 去掉右上角「原生模式」标签

v7.0.0(2026-10-08)

  • 彻底删除网页兜底(按要求纯原生化)
  • 打开即播,不再弹套餐/卡密页
  • 设置移到分组列表第一项(显眼位置)

v7.0.1 / v6.x / v5.x / v4.x / v3.x / v2.x / v1.x

早期版本(IPTV807-TV-v1.0.0 起至 v6.1.1)在与新版本交替时已被删除, 当时项目无 git 历史与备份,无法恢复。自 v8.3.0 起不再删除任何版本。