Some checks failed
iOS CI/CD / Build & Test (push) Has been cancelled
- rust-ffi-update.md: FFI binding update workflow - app-store-submission-checklist.md: 9-section App Store review - ios-ci.yml: GitHub Actions build + test on macos-15 - firebase-crashlytics-integration.md: Crashlytics setup guide Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2.4 KiB
2.4 KiB
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.swiftuniffi 绑定与 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 分支保护已启用