- LeftPanel: 整合子组件,使用 useChannels/useGroups/useFavorites - BottomPanel: 使用 useUI 替代 props - VideoPlayer: 优化播放器逻辑 - DebugPanel: 移动到 Layout 目录 - InputPanel: 新增遥控输入组件 - useUI: 优化 UI 状态管理
📺 IPTV 跨平台应用
基于 Web 技术的跨平台 IPTV 播放器,一套代码支持 Windows、Mac、Android、Android TV、Web。
项目结构
iptv-app/
├── ui/ # 🌐 Web 核心代码 (Vue 3)
│ ├── src/
│ │ ├── components/ # 播放器组件
│ │ ├── utils/ # M3U 解析等工具
│ │ └── App.vue # 主应用
│ ├── public/ # 静态资源
│ └── dist-web/ # 📦 Web 构建输出(各平台共用)
├── web/ # 网页端,nodejs中间层+docker封装
├── desktop/ # 🖥️ Tauri 桌面端 (Win/Mac)
├── android/ # 📱 Android WebView 壳
├── android-tv/ # 📺 Android TV WebView 壳
└── web/ # 🐳 Docker Web 服务端
技术栈
| 平台 | 技术 | 说明 |
|---|---|---|
| UI 核心 | Vue 3 + Vite + hls.js | 一套代码,所有平台共用 |
| Web | Nodejs | 中间层代理,解决跨域问题 |
| Desktop | Tauri (Rust) | 轻量 (~5MB),高性能 |
| Android | WebView + ExoPlayer | 手机/平板 Web 壳 |
| Android TV | WebView + Leanback | TV 专用,支持遥控器导航 |
| Web | Node.js + Docker | 网页端 + 代理服务 |
快速开始
Docker Web(推荐)
# 1. 构建 Web UI
cd ui && npm run build
# 2. 启动 Docker 服务
cd ../web
docker-compose up -d
# 访问 http://localhost:3000
Android 构建
# 1. 构建 Web UI
cd ui
npm install
npm run build
# 2. 构建 Android APK
cd ../android
./build.sh
APK 输出位置: android/app/build/outputs/apk/debug/app-debug.apk
Android TV 构建
cd android-tv
./build.sh
Description
Languages
JavaScript
88.4%
Vue
6.1%
Java
3.3%
Shell
0.8%
HTML
0.5%
Other
0.8%