用途:为 Swift 应用生成最低版本校验系统。当需要关键更新时阻断使用,或在推荐更新时显示可关闭提示。通过远程配置端点或 App Store 查询接口比较当前版本与最低版本,并呈现相应界面。
主要能力:生成 AppVersion.swift(语义化版本模型,含 Comparable)、UpdateRequirement.swift(none/softUpdate/hardUpdate 枚举)、VersionChecker.swift(协议与实现)、UpdateManager.swift(@Observable 协调器)、ForceUpdateView.swift(全屏阻断视图)、SoftUpdateBannerView.swift(可关闭横幅)与 UpdateCheckModifier.swift(自动检查的 ViewModifier)。支持硬阻断、软提示或两者兼有;检查频率可选每次启动、每日或每周;软更新可支持跳过特定版本。远程 JSON 可区分最低版本与推荐版本并携带消息与 storeURL。
使用方式:将修饰符加到根视图,如 ContentView().checkForUpdates(),也可传入自定义 checker 与 frequency;设置页可调用 updateManager.checkNow() 或 openAppStore() 手动检查。集成前会检测 Swift 版本(需 5.9+)、部署目标(iOS 16+/macOS 13+)、@Observable 支持及既有版本检查与网络层代码。
适用场景:需要强制升级、最低版本强制、必需更新、版本检查、更新弹窗或废弃旧版本的 iOS/macOS 项目。
限制:iTunes Search API 有未公开的限流,建议自建远程 JSON 并缓存;版本比较须按 major.minor.patch 数值解析,不能按字符串字典序比较;网络失败时默认放行不阻断;引导流程中应延后检查;建议跳过 TestFlight 与 DEBUG 构建;审核期间展示更新提示可能被拒。Swift/ZIP 等具体模板细节以技能生成结果为准。