在多媒体应用领域,跨平台往往意味着妥协。 TVBox-Swift 是一套完全基于 原生 Swift 与 SwiftUI 构建的跨平台多媒体应用核心工程,专为 macOS (14.0+) 和 iOS (17.0+) 量身打造。它摒弃了传统的混合开发模式,致力于在苹果双端提供无缝、现代且极其流畅的原生视听体验。

✨ 核心特性:原生之力,极致体验
1. 真正的原生跨平台 (Native Cross-platform)
- 一套代码,双端完美运行:基于最新的 SwiftUI 声明式框架和 SwiftData 数据持久化技术,实现了代码的高度复用,同时针对 macOS 的键鼠交互与 iOS 的触控手势进行了深度原生适配。
- 性能飞跃:得益于原生编译优势,应用在启动速度、列表滚动、页面切换及视频加载上均表现出丝滑般的流畅度。
2. 前沿的 UI 视觉 (Modern UI & Glassmorphism)
- 毛玻璃美学:全面引入 Glassmorphism (毛玻璃) 视觉设计体系,界面通透、层级丰富,完美契合 macOS Big Sur 以来及 iOS 的设计语言。
- 微交互与动画:从资源列表的加载动效到播放页的转场,全系重构了动画逻辑,提供细腻的自然物理反馈。
- 完美暗黑模式:原生级支持 Dark Mode,自动适配系统主题,夜间观影更舒适。
3. 全方位的媒体功能栈 (Media Stack)
- 点播中心 (VOD Center):
- 智能检索:整合多源资源检索,支持卡片化视觉呈现。
- 多级详情:提供详尽的影片详情页,包含简介、演员、剧照等。
- 生态兼容:原生支持解析主流 CMS JSON (type=1) 和 XML (type=0) 数据源接口。
- 注意:受限于 iOS/macOS 沙盒机制与安全策略,内核未集成 Java/Rhino 引擎,因此不支持 type=3 (Spider/Jar) 等依赖动态脚本执行的复杂爬虫源。
- 直播支持 (Live):内置稳定的流媒体播放构件,支持基础直播流播放。
- 内容枢纽 (Content Hub):提供全局搜索、智能历史记录流、一键收藏管理等便捷功能。
4. 健壮的业务底层 (Robust Foundation)
- SwiftData 持久化:利用苹果最新的数据框架,实现高效、安全的本地缓存与数据存储,自动处理数据迁移。
- 容错解析引擎:具备极强的网络接口兼容性,支持对非标准 JSON/XML 接口进行自动容错处理与数据清洗,确保资源加载成功率。
🔍 关键差异:TVBox-Swift vs 安卓参考版
由于底层架构与系统生态的巨大差异,TVBox-Swift 在功能取舍上与安卓版存在显著不同。以下是基于当前代码版本的详细对比:
| 功能维度 | TVBox-Swift (macOS/iOS) | TVBox (Android 参考版) |
|---|---|---|
| 源类型支持 | ✅ 支持 type=0/1/4 (XML/JSON/Remote) ❌ 不支持 type=3 (JAR/Spider 动态脚本) | ✅ 支持 type=0/1/3/4 ✅ 完整支持 Java/Rhino 动态脚本源 |
| 配置兼容 | ⚠️ 常规 URL 拉取 + 注释容错 ❌ 不支持加密配置解密、clan:// 协议 | ✅ 支持加密配置解密、clan://、相对路径修复、独立直播配置 |
| 解析链路 | ⚠️ 仅展示解析器配置数量 ❌ 未接入完整的嗅探/规则引擎/过滤策略 | ✅ 支持嗅探、解析切换、自定义规则引擎及过滤 |
| 播放内核 | ✅ AVPlayer (系统原生) + VLCKit (跨平台) ❌ 不支持 IJK/EXO/外部播放器调用 | ✅ 支持 System/IJK/EXO/外部播放器多种模式 |
| 字幕体系 | ❌ 尚未接入完整字幕功能 (搜索/样式/延迟等) | ✅ 支持字幕搜索、本地加载、样式调节、内嵌轨道 |
| 直播高级功能 | ⚠️ 基础分组与线路切换 ⚠️ EPG 为简化实现 | ✅ 完整支持 EPG、回看/时移、分组密码、复杂设置 |
| 筛选与检索 | ⚠️ 基础搜索与分类浏览 | ✅ 支持分类筛选、复选搜索、高级交互界面 |
| 远程与推送 | ❌ 暂未提供本地控制服务与推送能力 | ✅ 具备本地控制服务、推送/遥控功能 |
| 设置项覆盖 | ⚠️ 保留核心常用设置 | ✅ 极细粒度设置 (DoH, 渲染缩放, M3U8 净化等) |
| 收藏闭环 | ⚠️ 有收藏页与模型,详情页入口待完善 | ✅ 详情页直接加入/取消收藏,闭环完整 |
💡 适用场景与建议
TVBox-Swift 是为 Apple 生态重度用户 打造的终极解决方案。
- 如果你追求 极致的 UI 美感 和 原生的流畅体验,厌倦了安卓移植应用的粗糙感,它是首选。
- 如果你的数据源主要是 标准的 JSON/XML 接口(目前绝大多数公开源均为此类),它能完美胜任。
- 如果你需要在 Mac 和 iPhone/iPad 之间同步观看历史和收藏,SwiftData 带来的统一体验无可替代。
⚠️ 注意事项:
如果你高度依赖 type=3 (Jar/Spider) 动态脚本源、复杂的直播回看功能或高度定制化的解析规则,目前的 Swift 版本可能暂时无法满足需求。建议关注项目后续更新,或暂时沿用安卓版本。











评论