e8c3e4644e
CI / lint-and-build (push) Has been cancelled
- Swift 6 + SwiftUI + SwiftData 直接调用阿里云 VOD API - 自实现 POP 签名,无需 Node 后端 - 视频列表、搜索、批量下载到用户选择目录 - 下载文件自动使用视频标题重命名 - 浏览器下载与下载工具(aria2/wget)两种方式 - Web 版标记为废弃,README/AGENTS/MEMORY 更新
58 lines
1.4 KiB
Markdown
58 lines
1.4 KiB
Markdown
# 火炬 VOD 管理器 - macOS 原生版
|
||
|
||
基于 SwiftUI + Swift Package Manager 的阿里云 VOD 桌面管理客户端。
|
||
|
||
## 特性
|
||
|
||
- 原生 macOS SwiftUI 界面
|
||
- 直接调用阿里云 VOD OpenAPI,无需 Node 后端
|
||
- 多账号管理、切换
|
||
- 视频列表、搜索、详情
|
||
- 批量下载到用户指定目录
|
||
- 自定义下载文件名(自动清理非法字符)
|
||
- 下载任务历史
|
||
- 操作日志
|
||
|
||
## 技术栈
|
||
|
||
- Swift 6 + SwiftUI
|
||
- GRDB(SQLite)
|
||
- CryptoKit(阿里云 POP 签名)
|
||
- URLSession(网络请求与下载)
|
||
|
||
## 开发要求
|
||
|
||
- macOS 14+
|
||
- Xcode 15+
|
||
- Swift 5.9+
|
||
|
||
## 本地运行
|
||
|
||
```bash
|
||
cd apps/macos/VODManager
|
||
swift build
|
||
swift run
|
||
```
|
||
|
||
或在 Xcode 中打开 `Package.swift`。
|
||
|
||
## App Store 上架准备
|
||
|
||
1. 在 Xcode 中创建正式的 macOS App 工程(或打开 Swift Package)。
|
||
2. 配置 Signing & Capabilities:
|
||
- App Sandbox 开启
|
||
- 启用 entitlements 文件 `VODManager.entitlements`
|
||
- Team 与 Bundle Identifier
|
||
3. 提交 Mac App Store 审核。
|
||
|
||
### Entitlements 说明
|
||
|
||
- `com.apple.security.app-sandbox`:沙盒必须开启
|
||
- `com.apple.security.network.client`:访问阿里云 API
|
||
- `com.apple.security.files.user-selected.read-write`:用户选择下载目录
|
||
- `com.apple.security.files.downloads.read-write`:写入 Downloads 目录
|
||
|
||
## 与 Web 版的关系
|
||
|
||
Web 版(`apps/web` + `apps/server`)已废弃,不再维护。所有新功能在 macOS 原生版中实现。
|