# App Store 提审 Checklist ## 1. 代码与构建 - [ ] `Build Configuration = Release` - [ ] 所有 Scheme 编译通过(iOS + Simulator) - [ ] SwiftLint / ESLint 无 warning - [ ] 单元测试全部通过 - [ ] `ENABLE_BITCODE = NO`(Xcode 15+) - [ ] Deployment Target >= iOS 16.0 ## 2. 隐私与权限 - [ ] `Info.plist` 无未声明的隐私权限 - [ ] 隐私清单(PrivacyInfo.xcprivacy)包含所有使用的 API - [ ] UserDefaults - [ ] FileTimestamp - [ ] SystemBootTime - [ ] App Tracking Transparency 弹窗(如使用 IDFA) - [ ] 数据收集声明在 App Store Connect 中填写 ## 3. 网络与安全 - [ ] 所有 API 调用使用 HTTPS - [ ] ATS(App Transport Security)无例外域名(或已声明) - [ ] API Key / Token 不硬编码在源码中 - [ ] Keychain 用于存储敏感凭证 - [ ] 证书和 Provisioning Profile 有效(≥30 天) ## 4. Rust xcframework - [ ] `ZxDocumentRuntime.xcframework` 包含所需架构 - [ ] `ios-arm64`(真机) - [ ] `ios-arm64-sim`(Apple Silicon 模拟器) - [ ] `ios-x86_64-sim`(Intel 模拟器,可选) - [ ] xcframework 已正确嵌入(Embed & Sign) - [ ] `zx_document.swift` uniffi 绑定与 xcframework 版本一致 - [ ] 加密导出合规(如适用,提交 EAR 分类) ## 5. UI 与体验 - [ ] 启动图/Launch Screen 正确显示 - [ ] 无空白页面或崩溃路径 - [ ] iPad 适配(如声明支持) - [ ] 深色模式适配 - [ ] 多语言文本无截断 - [ ] VoiceOver 可用(基础无障碍) ## 6. App Store Connect 元数据 - [ ] 应用名称、副标题、描述 - [ ] 关键词(100 字符内) - [ ] 截图(6.7" + 6.5" + 5.5" 各 1-3 张,或仅 6.7") - [ ] 应用图标(1024×1024) - [ ] 分级(Rating) - [ ] 版权信息 - [ ] 技术支持 URL - [ ] 隐私政策 URL ## 7. 测试 - [ ] TestFlight 内部测试已通过 - [ ] 主要流程回归测试:登录→阅读→标记→分析 - [ ] 网络异常场景:飞行模式、弱网、超时 - [ ] App 切换(后台→前台)无数据丢失 - [ ] 低存储空间场景 ## 8. 版本管理 - [ ] `CFBundleShortVersionString` 递增(如 1.0.0 → 1.1.0) - [ ] `CFBundleVersion` 递增(Build Number) - [ ] Git tag 对应版本号 ## 9. 紧急回滚准备 - [ ] 上一版本 ipa 已归档 - [ ] 知道如何取消审核(App Store Connect → 移除提交) - [ ] Release 分支保护已启用