乐于分享
好东西不私藏

提交 App Store 前,让 AI 帮你过一遍审核清单

提交 App Store 前,让 AI 帮你过一遍审核清单

这里每天分享一个 iOS 的新知识,快来关注我吧

前言

做 iOS 开发的都经历过这种事:辛苦写完代码,测试也过了,满怀期待提交 App Store,结果被拒。

理由五花八门——描述里写了”Android”、隐私清单没加、中国区元数据提到了 ChatGPT、订阅页缺了用户协议链接。每一条单独拿出来都不难修,但 Apple 有 100 多条审核条款,你凭记忆根本不可能每次都检查到位。

最近 GitHub 上有人做了一个 AI agent skill,叫 App Store Preflight。它能在提交前自动扫描你的 Xcode 项目,把常见的被拒风险全部标出来。

三天 580+ Star,相比还比较早期,纯 Markdown 实现,零代码依赖。

App Store Preflight 项目结构

它解决的是什么问题

App Store 审核被拒的原因,大部分不是技术问题,而是”忘了”。

忘了在隐私清单里声明 UserDefaults 的使用理由。忘了删掉描述里的”Also available on Google Play”。忘了中国区不能提 ChatGPT。忘了订阅页面的服务条款链接。

这些问题有个共同特点:规则是确定的,检查是机械的,但人就是会漏。

App Store Preflight 的思路很直接——把 Apple 的 100 多条审核规则拆成机器可读的检查项,让 AI 编程助手(Claude Code、Cursor 等)按清单逐项扫描你的项目,扫完出报告。

五步工作流

整个流程分五步,每一步都有对应的规则文件:

第一步:识别应用类型,加载对应清单

它预置了 10 套清单,按应用类型分类:通用规则(所有应用必查)、订阅/内购、社交/UGC、儿童类、健康健身、游戏、macOS、AI 应用、加密货币/金融、VPN。

你的应用是什么类型,就加载什么清单。一个带订阅的 AI 应用,会同时加载通用清单 + 订阅清单 + AI 清单。

第二步:拉取 App Store 元数据

通过 asc CLI(App Store Connect 命令行工具)拉取你提交到 App Store 的元数据——应用名称、副标题、描述、关键词、更新日志、截图文字,全部拉到本地。

第三步:按规则逐项扫描

规则按五个分类组织:元数据、订阅、隐私、设计、权限。每条规则包含四个部分:查什么、怎么检测、怎么修、Apple 拒审的原文长什么样。

第四步:生成报告

扫描完输出一份结构化报告,按严重程度排序:❌ 会被拒的问题 → ⚠️ 有风险的问题 → ✅ 已通过的检查项。每个问题标注对应的 Apple 条款编号、出问题的文件路径、具体修复方案。

第五步:自动修复 + 二次验证

部分问题能直接自动修复,比如删掉竞品关键词、补上缺失的链接模板。修完之后重新跑一遍受影响的检查项,确认问题消失了才标记为已修复。

App Store Preflight 扫描报告

几条实用规则,展开讲讲

竞品关键词(Guideline 2.3.1)

你的元数据里不能出现 Android、Google Play、Samsung、APK 这些词。”Also available on Android” 要改成 “Available on multiple platforms”,”Transfer from Android” 要改成 “Transfer from your previous device”。

看起来是常识?但我见过不少跨平台应用,描述直接从 Google Play 那边复制过来,忘了改。

中国区 AI 服务限制(Guideline 5)

在中国大陆上架的应用,元数据里不能提 ChatGPT、GPT-4、OpenAI、Gemini、Claude、Midjourney、DALL-E、Copilot。而且 Apple 审核不只看中文简体的元数据——所有语言版本的元数据都会被检查,只要你的应用在中国区可用。

解决方案要么删掉所有 AI 品牌名改用”AI 驱动”之类的通用说法,要么直接把中国大陆从可用地区里去掉。

隐私清单(Guideline 5.1.1)

从 2024 年春季开始,只要你的代码(包括第三方 SDK)用了 UserDefaults、文件时间戳、系统启动时间、磁盘空间这几类 API,就必须在 PrivacyInfo.xcprivacy 里声明使用理由。

这条坑在哪?你自己的代码可能没用,但 Firebase、Amplitude 这些 SDK 用了,照样要声明。Preflight 会扫描整个项目的源码和依赖,把用到的 API 全部列出来。

Sign in with Apple(Guideline 4.0)

如果你的应用支持第三方登录(Google、微信、Facebook),就必须同时提供 Sign in with Apple。而且登录之后不能再强制要求用户填姓名和邮箱——因为 SIWA 的匿名邮箱功能就是为了让用户不暴露真实邮箱。

技术实现:纯 Markdown,零代码

整个项目没有一行可执行代码。所有规则都是 Markdown 文件,存放在 references/rules/ 目录下。AI 编程助手读取这些文件后,按照里面的 “How to Detect” 部分执行检查命令(grep、find、asc CLI 等)。

这个设计选择很聪明:

  1. 任何人都能贡献新规则——写一个 Markdown 文件就行,不需要会编程
  2. 规则即文档——每条规则自带 Apple 官方的拒审邮件原文,既是检查项也是学习资料
  3. 不绑定特定工具——Claude Code、Cursor、Copilot,只要能读 Markdown 的 AI 工具都能用

怎么装

一行命令:

npx skills add truongduy2611/app-store-preflight-skills

装完之后在 AI 编程助手里运行 preflight 检查,它会自动读取规则文件,扫描你的项目目录,输出报告。

需要搭配 asc CLI 使用(brew install asc),用来拉取 App Store 元数据。如果你不用 asc,也能跑,只是元数据相关的检查需要你手动提供文件路径。

最后

App Store 审核被拒不可怕,可怕的是每次都因为同样的低级错误被拒。

Preflight 做的事情并不复杂——就是把 Apple 审核规则结构化,然后让 AI 一条一条帮你过。但正是这种”把确定性的事情自动化”的思路,能省掉大量反复提交、等审核、再修改的时间。

下次提交之前,跑一遍。

这里每天分享一个 iOS 的新知识,快来关注我吧

本站文章均为手工撰写未经允许谢绝转载:夜雨聆风 » 提交 App Store 前,让 AI 帮你过一遍审核清单

猜你喜欢

  • 暂无文章