Apple App Store 审核合规代理
来自 Wikiprompt,自由的提示词百科全书
Apple App Store 审核合规代理 一份全面的系统提示词,将AI转变为苹果App Store审核合规专家,引导其依据18项关键准则分析应用,并生成可操作、按优先级排序的合规计划及具体修复方案。
提示词内容收藏
🌐
## 合规计划:示例应用
### 摘要
该应用在隐私政策、权限使用描述和账户删除流程方面存在重大合规风险。这些是App Store审核中最常见的被拒原因,必须立即解决。其他方面(如崩溃、私有API、外部支付链接)目前看来合规,但需进一步验证。
### 需求审查
#### REQ-01 · 隐私政策 - 风险
**发现:** 应用内未提及隐私政策,App Store Connect中未提供隐私政策URL。
**风险:** 缺少隐私政策URL将导致自动拒绝。审核员无法验证数据处理方式。
**操作:** 在您的域名上托管隐私政策(例如 `https://yourdomain.com/privacy`),并在App Store Connect的“应用信息 → 隐私政策URL”中填写。在应用内(设置或引导流程)添加可点击链接。确保URL返回200状态码且无需登录即可访问。
#### REQ-02 · 权限使用说明 - 风险
**发现:** 应用请求相机和位置权限,但 `Info.plist` 中的描述为通用文本,如“需要访问相机”和“需要访问位置”。
**风险:** 通用描述不符合5.1.1要求。审核员会标记模糊的权限描述。
**操作:** 将描述替换为具体用途:
- `NSCameraUsageDescription`:“用于扫描二维码以签到场馆。”
- `NSLocationWhenInUseUsageDescription`:“用于在地图上显示附近的餐厅。”
确保描述与实际功能完全匹配。
#### REQ-03 · 权限与实际使用匹配 - 风险
**发现:** 应用在启动时请求相机和位置权限,但用户首次打开时并未触发相关功能。
**风险:** 审核员会认为权限请求是推测性的,违反5.1.1。应用可能在审核中被拒。
**操作:** 将权限请求移至用户实际触发相关功能时(例如点击“扫描”按钮时请求相机权限)。确保审核员无需付费账户即可访问这些功能。
#### REQ-04 · 无私有API - 通过
**发现:** 应用仅使用公开框架(`AVFoundation`、`CoreLocation`、`UserNotifications`)。
**风险:** 无私有API风险。
**操作:** 在构建后运行 `nm -u YourApp.app/YourApp | grep " U "` 以验证所有导入符号均为公开API。
#### REQ-05 · 启动不崩溃 - 通过
**发现:** 应用目标iOS 16+,已在iOS 17模拟器上测试。
**风险:** 未在iOS 16物理设备上测试可能导致未发现的崩溃。
**操作:** 在运行iOS 16.0的物理设备上测试。检查是否有iOS 17新增API未使用 `if #available(iOS 17, *)` 保护。通过TestFlight安装并测试。
#### REQ-06 · 访客/无账户访问 - 通过
**发现:** 用户无需登录即可浏览内容,登录仅用于发布或保存。
**风险:** 无风险,符合5.1.1。
**操作:** 确保浏览流程在无账户提示的情况下至少可使用2-3分钟。
#### REQ-07 · 应用内账户删除 - 风险
**发现:** 用户需发送邮件至 `support@yourdomain.com` 删除账户。
**风险:** 不符合5.1.1。邮件链接不构成应用内删除流程,将被拒绝。
**操作:** 在设置中添加“删除账户”选项。流程必须:(1) 标签清晰,(2) 实际删除数据(非仅停用),(3) 删除或匿名化所有个人数据,(4) 无需联系任何人即可完成。可显示确认对话框和宽限期,但必须自助完成。
#### REQ-08 · 无外部支付链接 - 通过
**发现:** 应用仅通过StoreKit销售订阅,无外部支付链接。
**风险:** 无风险,符合3.1.1。
**操作:** 确认无任何文本或按钮提及外部购买渠道。
#### REQ-09 · 审核备注中的演示凭据 - 通过
**发现:** 演示凭据已提供。
**风险:** 需确认凭据位置正确。
**操作:** 将演示凭据移至App Store Connect的“App Review Information”字段,而非应用描述。提供用户名、密码,并禁用2FA或提供TOTP种子。
#### REQ-10 · 截图反映实际应用 - 通过
**发现:** 截图来自真实UI。
**风险:** 无风险,符合5.2.2。
**操作:** 确认截图与提交版本UI一致,无营销渲染图。
#### REQ-11 · 应用名称与二进制匹配 - 通过
**发现:** `CFBundleDisplayName` 与App Store Connect名称一致。
**风险:** 无风险,符合1.2。
**操作:** 无需操作。
#### REQ-12 · 不提及其他平台 - 通过
**发现:** 应用描述和UI中无Android或Google Play提及。
**风险:** 无风险,符合2.3.3。
**操作:** 无需操作。
#### REQ-13 · 年龄分级准确性 - 风险
**发现:** 应用包含用户生成内容(社交信息流),但年龄分级为4+。
**风险:** 用户生成内容需17+评级,除非实施审核。否则将被拒绝或移除。
**操作:** 实施内容审核机制:(1) 举报/标记功能,(2) 元数据中的审核政策声明,(3) 人工或自动过滤。若无法实施,将年龄分级改为17+。
#### REQ-14 · 支持当前屏幕尺寸 - 通过
**发现:** 应用使用SwiftUI安全区域。
**风险:** 无风险,符合2.1。
**操作:** 在iPhone 15 Pro(灵动岛)和iPhone SE模拟器上测试,确认无内容遮挡。
#### REQ-15 · HTTPS / ATS - 通过
**发现:** 所有网络调用使用HTTPS,无ATS异常。
**风险:** 无风险,符合5.1.1。
**操作:** 无需操作。
#### REQ-16 · 使用当前Xcode/SDK构建 - 通过
**发现:** 使用Xcode 15+构建,目标iOS 17 SDK。
**风险:** 无风险,符合2.5。
**操作:** 确认 `xcode-select --version` 显示Xcode 15+。
#### REQ-17 · 应用图标无Alpha通道 - 通过
**发现:** 图标已导出为无透明背景的PNG。
**风险:** 无风险,符合2.1。
**操作:** 验证图标模式为 `RGB` 而非 `RGBA`。
#### REQ-18 · 隐私清单 - 风险
**发现:** 应用使用 `UserDefaults` 和 `FileManager`,但未包含 `PrivacyInfo.xcprivacy` 文件。
**风险:** 缺少隐私清单将导致拒绝,违反5.1.2。
**操作:** 创建 `PrivacyInfo.xcprivacy` 文件,声明 `NSUserDefaults`(原因 `CA92.1`)和 `NSFileManagerAPI`(原因 `0A2A.1`)。在Xcode中通过“File → New → File → App Privacy”生成模板。归档后验证文件存在于 `.xcarchive` 中。
### 优先级顺序
1. **REQ-01 · 隐私政策** - 缺失将导致自动拒绝。
2. **REQ-07 · 账户删除** - 邮件流程直接违反5.1.1。
3. **REQ-02 · 权限描述** - 通用描述将被标记。
4. **REQ-03 · 权限匹配** - 推测性权限请求将被拒绝。
5. **REQ-13 · 年龄分级** - 用户生成内容需17+评级。
6. **REQ-18 · 隐私清单** - 缺失将导致拒绝。
### App Review Notes模板
```
演示账户:
- 用户名:demo@example.com
- 密码:DemoPass123
- 2FA:已禁用
测试说明:
- 应用启动后,浏览功能无需登录即可使用。
- 登录后,可在“设置”中访问“删除账户”功能。
- 相机权限仅在点击“扫描”按钮时请求。
- 位置权限仅在点击“附近”标签时请求。
其他说明:
- 所有网络请求使用HTTPS。
- 隐私政策可在 https://yourdomain.com/privacy 查看。
```
用法
此提示词专为 coding 设计。复制上方内容并粘贴到你常用的 AI 工具中。
为获得最佳效果,可将占位符(方括号或大写字母标示)替换为你的具体需求。
讨论
0 条评论