docs: 添加 README(功能亮点/遥控器操作/安装说明)、LICENSE、更新日志、横幅与 v9.2.0 APK
This commit is contained in:
1 parent
39c0c65c92
commit
1b87544e42
7 files changed
+247
-1
No files matched your search
+2
-1
@@ -1,5 +1,6 @@
|
||||
build/
|
||||
.gradle/
|
||||
local.properties
|
||||
*.apk
|
||||
.idea/
|
||||
*.apk
|
||||
!apk/*.apk
|
||||
+118
@@ -0,0 +1,118 @@
|
||||
# 更新日志
|
||||
|
||||
> 包名:`com.iptv807.tv` | Android 5.0+
|
||||
> 每个版本的 APK 都在 [`apk/`](apk/) 目录与 [Releases](../../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 起不再删除任何版本。
|
||||
@@ -0,0 +1,27 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2026 港澳台直播
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
---
|
||||
|
||||
补充说明:本软件仅是一个播放器外壳,不存储、不转播、不托管任何视频内容。
|
||||
所有频道数据均来自第三方公开网站,其版权归原权利人所有。使用者应自行承担
|
||||
使用风险,请在下载后 24 小时内删除。
|
||||
@@ -0,0 +1,100 @@
|
||||
<div align="center">
|
||||
<img src="assets/banner.png" alt="港澳台直播" width="820">
|
||||
<h1>港澳台直播 · Android TV</h1>
|
||||
<p><b>港澳台 55 个频道,装上就能看,遥控器一点就换台</b></p>
|
||||
<p>
|
||||
<a href="https://github.com/personal82555/gangao-tv/releases/latest"><img src="https://img.shields.io/badge/下载-APK-1B6EF3?style=for-the-badge" alt="下载"></a>
|
||||
<img src="https://img.shields.io/badge/Android-5.0%2B-3DDC84?style=for-the-badge&logo=android&logoColor=white" alt="Android 5.0+">
|
||||
<img src="https://img.shields.io/badge/平台-Android%20TV%20%7C%20电视盒子%20%7C%20手机-555?style=for-the-badge" alt="平台">
|
||||
</p>
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
## ✨ 为什么值得装
|
||||
|
||||
| | 特点 | 说明 |
|
||||
|---|---|---|
|
||||
| 📺 | **55 个港澳台频道** | 香港 / 澳门 / 台湾 三大分组,含 TVB 翡翠台、明珠台、无线新闻、凤凰卫视、ViuTV、HOY TV、澳视、台湾综合台等 |
|
||||
| 🎮 | **遥控器真的能用** | 数字键直接跳台;选台面板方向键移动,**选中行蓝底高亮**,按 OK 播放 |
|
||||
| 🔀 | **10 条线路自动切换** | 一条不通自动换下一条,不用手动折腾 |
|
||||
| 🔁 | **断了会自己回来** | 网络抖动自动重试;从后台/设置页返回自动重连画面;实在不行点「▶ 继续播放」 |
|
||||
| ⭐ | **收藏常看频道** | 菜单键一键收藏,收藏分组置顶 |
|
||||
| 🚀 | **秒开体验** | 高亮频道时后台悄悄备好源,按 OK 基本秒开;看过的频道切回是瞬间的 |
|
||||
| 💡 | **贴心的电视细节** | 开机自启动、播放中屏幕常亮、连滑两次安全退出(带确认)、全屏无干扰 |
|
||||
| 🆓 | **免费可用** | 每天免费 1 小时;需要长时间观看可购买月卡/季卡/永久 |
|
||||
|
||||
## 📺 频道分组
|
||||
|
||||
| 分组 | 数量 | 代表频道 |
|
||||
|---|---|---|
|
||||
| 🌏 香港 | 20+ | TVB 翡翠台、TVB Plus、明珠台、无线新闻台、凤凰卫视中文台/资讯台、ViuTV、HOY TV、港台电视 31 |
|
||||
| 🌏 澳门 | 6 | 澳视澳门、澳视综艺、澳视资讯、澳门莲花、澳門卫视 |
|
||||
| 🌏 台湾 | 20+ | 台视、中视、华视、民视、公视、TVBS、东森、三立、八大、龙华系列 |
|
||||
|
||||
> 频道数量与线路由源站动态提供,实际以 App 内列表为准。
|
||||
|
||||
## 🎮 遥控器操作
|
||||
|
||||
| 按键 | 作用 |
|
||||
|---|---|
|
||||
| **OK**(画面中) | 弹出选台面板 |
|
||||
| **上下** | 移动选中项(蓝底高亮),停一下会自动预加载 |
|
||||
| **左右** | 在「分组 ↔ 频道」之间切换 |
|
||||
| **OK**(面板中) | 播放选中的频道 |
|
||||
| **返回** | 收起面板 |
|
||||
| **数字键** | 直接跳到对应频道号 |
|
||||
| **菜单键** | 收藏 / 取消收藏当前频道 |
|
||||
| **连滑两次** | 退出应用(有确认弹窗) |
|
||||
|
||||
## 📥 下载安装
|
||||
|
||||
1. 下载最新 APK:[**港澳台直播-v9.2.0.apk**](apk/港澳台直播-v9.2.0.apk)(或到 [Releases](../../releases) 下载)
|
||||
2. 传到电视盒子 / 电视 / 手机上
|
||||
3. 安装时允许「未知来源」应用
|
||||
4. 打开即播,默认进入 **TVB 翡翠台**
|
||||
|
||||
- 包名:`com.iptv807.tv` | 支持 Android 5.0 及以上 | 横屏
|
||||
- TV 桌面会自动出现横幅图标(Leanback)
|
||||
|
||||
## 💳 会员与激活
|
||||
|
||||
- **免费**:未激活也能看,每天 1 小时
|
||||
- **扫码购买**:设置 →「支付成为会员」→ 选套餐 → 支付宝/微信扫码 → **支付成功自动激活本机**(无需卡密)
|
||||
- **卡密激活**:设置 →「卡密激活」→ 输入卡密 → 立即生效(无需重启)
|
||||
|
||||
## 🛠 技术栈
|
||||
|
||||
```
|
||||
Kotlin · Android Media3 / ExoPlayer · Leanback 兼容 · 无第三方 SDK
|
||||
```
|
||||
|
||||
- 播放源在 App 内实时解析(Referer / 302 跟随 / FLV 直播流),不依赖任何中转服务
|
||||
- 三级缓存(内存 / 磁盘)+ 每频道独立锁,网络抖动不影响切台
|
||||
- 播放中断自动换线路、缓存 token 过期自动刷新源
|
||||
|
||||
## ❓ 常见问题
|
||||
|
||||
**Q:某些频道要等几秒才出来?**
|
||||
A:源站每次取流需要现拉一次页面,偶尔较慢;已经打开过的频道会缓存 30 分钟,切回去是瞬间的。
|
||||
|
||||
**Q:显示「全部线路失败」?**
|
||||
A:多为该频道源站临时故障或网络抖动,App 会自动重试并刷新源;稍后再试或换一个频道。
|
||||
|
||||
**Q:从设置页返回画面不动了?**
|
||||
A:已自动重连;若仍不动,屏幕中央点「▶ 继续播放」(遥控 OK 也可以)。
|
||||
|
||||
## ⚠️ 免责声明
|
||||
|
||||
- 本项目仅是一个**播放器外壳**,不存储、不转播、不托管任何视频内容。
|
||||
- 所有频道数据均来自第三方公开网站,版权归原方所有。
|
||||
- 本项目仅供个人学习与技术交流,请勿用于商业用途;请于下载后 24 小时内自行删除。
|
||||
- 若相关内容侵犯了您的权益,请提交 Issue,我们会及时处理。
|
||||
|
||||
## 📄 更新日志
|
||||
|
||||
见 [CHANGELOG.md](CHANGELOG.md)
|
||||
|
||||
## 📜 许可
|
||||
|
||||
[MIT](LICENSE)
|
||||
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 304 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 34 KiB |
Reference in new issue
Block a user