3.0 KiB
3.0 KiB
技术栈
分析日期: 2026-05-21
语言
主要语言:
- Swift(Podspec 声明 Swift 5.10)— SDK 实现在
Sources/RDReaderView/**/*.swift,示例 App 在ReadViewDemo/ReadViewDemo/*.swift。
次要语言:
- Objective-C — 主要来自示例工程 vendored 的 CocoaPods 依赖源码
ReadViewDemo/Pods/**(例如 DTFoundation/DTCoreText)。
运行环境
平台:
- iOS — 最低 iOS 15.x(SDK 声明 iOS 15.0;Demo/Podfile 常见为 15.6)。
使用到的 Apple Framework(不完全列举):
- UIKit —
Sources/RDReaderView/**内的 UI 与控制器实现。 - WebKit — EPUB Web 渲染相关配置见
Sources/RDReaderView/EPUBCore/RDEPUBWebView+Configuration.swift。 - CoreText — 文本分页/渲染支持(
Sources/RDReaderView/EPUBTextRendering/**)。 - Foundation — 文件系统/持久化等基础能力(
Sources/RDReaderView/**)。
依赖管理
CocoaPods:
- SDK 以 Podspec 形式发布:
RDReaderView.podspec。 - 示例工程通过 CocoaPods 集成:
ReadViewDemo/Podfile、ReadViewDemo/Podfile.lock。 - Lockfile 记录的 CocoaPods 版本:1.16.2(
ReadViewDemo/Podfile.lock)。
未检测到:
- Swift Package Manager(未发现
Package.swift) - Carthage(未发现
Cartfile)
框架与第三方库
核心库(本仓库):
RDReaderView(阅读器 UI + EPUB/TXT 阅读能力)—Sources/RDReaderView/**。
Pod 声明的第三方依赖:
ZIPFoundation (~> 0.9)— EPUB 压缩包读取/解压与解析。DTCoreText— HTML → NSAttributedString 渲染(在#if canImport(DTCoreText)条件下使用)。SnapKit— Auto Layout 约束封装。SSAlertSwift— 弹窗/提示 UI 工具。
构建与开发工具
Xcode 工程(示例 App):
- Workspace/Project:
ReadViewDemo/ReadViewDemo.xcworkspace、ReadViewDemo/ReadViewDemo.xcodeproj。
CocoaPods post_install 构建设置(仓库内配置):
- 在 Pods 与用户工程上统一设置
IPHONEOS_DEPLOYMENT_TARGET = 15.6和ENABLE_USER_SCRIPT_SANDBOXING = NO— 见Podfile、ReadViewDemo/Podfile。
资源与素材
资源 bundle:
- Podspec 声明了
RDReaderViewAssets资源 bundle,来源为Sources/RDReaderView/Resources/**(RDReaderView.podspec)。
平台要求
开发:
- 需要 macOS + Xcode(iOS SDK)构建 Demo workspace/project(
ReadViewDemo/ReadViewDemo.xcworkspace)。 - 需要 CocoaPods 安装 Demo 依赖(
ReadViewDemo/Podfile.lock体现了 CocoaPods 使用)。
发布/分发:
- 以 CocoaPod 形式分发(
RDReaderView.podspec)。
Evidence(关键证据)
检查过的关键文件:
RDReaderView.podspecPodfileReadViewDemo/PodfileReadViewDemo/Podfile.lockReadViewDemo/ReadViewDemo.xcodeproj/project.pbxprojSources/RDReaderView/EPUBCore/RDEPUBWebView+Configuration.swiftSources/RDReaderView/EPUBCore/RDEPUBParser+Archive.swiftSources/RDReaderView/EPUBTextRendering/RDEPUBDTCoreTextRenderer.swift
技术栈分析:2026-05-21