快速回答: App 审核指南 是 Apple 和 Google 在应用上线前执行的审核规则。Apple 的规则 App Store 审核指南 分为以下几类: 安全、性能、业务、设计和法律。Google Play 会根据以下标准审核您的版本: 开发者计划政策 以及 Play Console 的要求,例如分级和数据安全。 审核耗时: Apple 表示 App Review 全天候运行,通常能在 24 小时内完成至少 50% 的审核 以及 48 小时内完成 90% 的审核 (App 审核)。Google 表示部分账号可能需要等待 最长七天甚至更久 在特殊情况下(发布你的 App)。新的个人 Play Console 账号可能还需要至少 12 名测试人员连续 14 天 在封闭测试中保持加入状态,并且 在申请发布 正式版时,至少仍有 12 人保持加入。 首次被拒 通常源于 2.1 App 完整性 (崩溃、死链、无效的演示账号), 2.3 元数据准确性,以及 5.1 隐私 在 iOS 上,以及 Android 端 Play 政策或测试步骤不完整。对于 指南 4.2 和 4.3 策略,请阅读 如何在 2026 年通过 App Store 审核。有关评分和家长控制,请参阅 app store 年龄分级指南。有关注册费,请参阅 在 App Store 发布应用的成本.
首次向 App Store 或 Play Store 提交应用可能会让人压力很大。随着 2026 年审核指南不断更新、执行更严格,让应用通过审核需要格外注意细节。这份清单会带你了解 iOS 和 Android 审核人员在首次提交时会检查哪些内容,更深入的 Apple 拒审应对手册见我们的 如何在 2026 年通过 App Store 审核 指南,供你在需要超越本概述的指南级细节时查阅。
了解 2026 年的审核流程
近年来,Apple 和 Google 都大幅收紧了审核流程,尤其重视隐私、安全和用户体验。对于首次发布应用的开发者来说,理解这些变化至关重要。
iOS App Store 审核周期
Apple 在其 App 审核 页面上公布时间:
- 典型耗时:至少 50% 的提交会在 24 小时内完成审核,90% 会在 48 小时内完成审核
- 提交信息不完整: 如果缺少元数据、演示账号或合规性回答,审核可能会延迟或失败
- 复杂应用: Apple 指出,需要更严格审查的应用可能耗时更长(提交之后)
- 加急审核: 在通过 App Store Connect 提交并通过该表单发送请求后,可用于修复严重 Bug 或应对限时活动 Apple 加急审核申请表
请按已公布的平均时长来规划,而不是个别案例的队列高峰,并把每条缺失的审核备注都视为延迟风险。
App Store Connect 中会看到的状态
- 准备提交: 你的 build 或元数据仍在准备中
- 等待审核: Apple 已将您的提交加入队列
- 审核中: 审核团队正在积极检查 App
- 等待开发者发布: 已通过,正在等待您的手动发布选择
- 被拒绝 / 存在未解决的问题: Apple 要求在批准前进行修改
Google Play Store 审核时间线 (2026 更新)
Google 官方文档说明的审核时间为 发布你的 App:
- 标准发布: 更新将在审核通过后尽快处理并发布
- 审核时间延长: 对于部分开发者账号,Google 可能需要 长达七天,极端情况下甚至更久
- 封闭测试门槛: 2023 年 11 月 13 日之后创建的个人账号至少需要 12 名测试人员至少连续 14 天保持加入状态 并参与封闭测试,且 申请时至少仍有 12 名测试人员保持加入状态 以获得正式发布权限
- 测试完成后: 应用正式上线前,正式发布审核仍会按 Play 政策执行
重要更新:Google 现在要求部分新的 Play Console 账号进行严格得多的测试,我们将在下文中详细介绍。
Apple Developer 账号设置
在进行首次 iOS 发布前,请确保 Apple 端已正确配置:
- 加入 Apple Developer Program
- 为用于注册的 Apple Account 开启双重认证
- 选择正确的会员类型:
- 个人 / 独资企业:你的法定姓名将成为 App Store 上的卖家名称
- 组织:需要法人实体、D-U-N-S 编号、官方网站,以及有权代表公司签署 Apple 协议的授权人员
- 注册时请使用法定姓名。在姓/名栏中使用别名或公司名称可能会延迟审核通过
- 注册通过后,登录 App Store Connect,使用最终的 bundle ID、应用名称、SKU 和主语言创建应用记录



重要提示: Apple 会随时间调整最低 SDK 要求。截至 2026 年 4 月 28 日,上传至 App Store Connect 的应用必须使用 iOS & iPadOS 26 SDK 或更高版本.
至关重要的 Android 测试要求
这是最让初次发布 Android 应用的开发者措手不及的变化:
新个人 Android 账号的 12 名测试人员要求
如果您的 Google Play 开发者账号是 2023 年 11 月 13 日之后创建的个人账号,则必须在应用发布到正式版之前完成封闭测试阶段:
要求:
- 至少 12 名测试人员:您必须至少有 12 名持续保持参与状态的测试人员
- 14 天测试期:这些测试人员必须在应用处于封闭测试期间,连续至少 14 天保持参与状态
- 正式版权限申请:提交申请时,封闭测试结束后仍须至少有 12 名测试人员保持参与状态
- 收集反馈:你应该记录发现的问题、修复方案以及测试人员的使用情况
如何设置你的测试轨道
-
创建封闭测试轨道
- 前往 Google Play Console
- 前往 测试和发布 > 测试 > 封闭测试
- 在封闭测试轨道中创建新版本
- 上传你的 Android App Bundle (
.aab)
-
招募测试人员
去哪里找测试人员:
- 亲朋好友(最简单的起点)
- 开发者社区(Reddit 的 /r/androiddev、/r/betatests)
- 社交媒体粉丝
- Beta 测试平台(BetaList、BetaTesting.com)
- 大学生(如果你有人脉)
重要提示: 请确保测试人员:
- 拥有有效的 Gmail 账号
- 实际使用 Android 设备
- 在整个 14 天期间保持 opt-in 状态
-
邀请测试人员
- 在 Play Console 中创建测试人员列表
- 添加测试人员的邮箱地址
- 将 opt-in URL 分享给测试人员
- 发送提醒,确保他们安装并使用 App
-
监控测试活动
- 在 Play Console 中查看安装量
- 跟踪崩溃报告和 ANR(应用无响应)
- 收集测试人员的反馈
- 在正式发布前修复所有严重问题
-
发布到生产环境
- 申请时,至少 12 名测试人员必须仍处于已加入状态,且在申请前 14 天内持续保持加入状态
- 在 Play Console dashboard 中申请生产环境访问权限
- 查看所有崩溃报告和反馈
- 创建生产版本并提交最终审核
Google 为何实施此项规定
Google 引入此项要求是为了:
- 减少低质量垃圾应用
- 确保应用在推送到用户前经过充分测试
- 通过实际使用模式识别恶意应用
- 提升 Play Store 的整体质量
现实提醒: 这会使你的发布周期至少增加 2-3 周。请做好相应规划并尽早招募测试人员。
身份验证与登录要求
最常见的被拒原因之一是身份验证系统实现不当,尤其是社交登录。
Apple Sign-In 要求(对 iOS 至关重要)
Apple 规则: 如果你的应用提供了任何第三方社交登录选项(Google、Facebook、Twitter 等),你 必须 同时提供 Sign in with Apple 选项。
这适用于:
- Google 登录
- Facebook 登录
- Twitter/X 登录
- LinkedIn 登录
- 其他任何第三方身份验证服务
这不适用于:
- 仅使用邮箱/密码的身份验证
- 政府身份证件系统
- 企业 SSO 系统(当应用仅供该特定企业使用时)
- 教育机构身份验证系统
实现 Sign in with Apple
如果你正在使用 social login,需要实现以下内容:
import { SignInWithApple } from '@capacitor-community/apple-sign-in';
async function signInWithApple() {
try {
const result = await SignInWithApple.authorize({
clientId: 'com.yourapp.service',
redirectURI: 'https://yourapp.com/auth/callback',
scopes: 'email name',
state: '12345',
nonce: 'nonce',
});
// result contains:
// - identityToken
// - authorizationCode
// - email (may be null if user previously authorized)
// - givenName
// - familyName
// Send to your backend for verification
await verifyAppleToken(result.identityToken);
} catch (error) {
console.error('Apple Sign In failed:', error);
}
}
重要注意事项:
-
邮箱隐私:用户可以选择隐藏其邮箱。Apple 会提供一个私密中继邮箱(例如,
abc123@privaterelay.appleid.com)。你的 App 必须能够处理这种情况。 -
首次用户 vs 回访用户:Apple 仅在首次授权时提供用户信息(姓名、邮箱)。请保存这些信息,因为后续登录不会再提供。
-
按钮设计:Apple 对 Sign in with Apple 按钮有严格的设计规范。请使用官方素材。
-
后端验证:始终在后端服务器验证 identity token,绝不要只信任客户端 token。
Android 社交登录要求
虽然 Android 不像 iOS 那样强制要求特定的提供商,但 Google 有以下准则:
Google Sign-In 要求:
- 必须使用官方 Google Sign-In SDK
- 必须遵守 Google 的品牌设计指南
- 如果提供该功能,应将其作为主要选项
跨平台最佳实践: 为了保持一致性,请在两个平台上提供相同的登录选项:
- 邮箱/密码
- 使用 Apple 登录(仅限 iOS,或在 Android 上支持 Web 版 Apple 登录时使用)
- 使用 Google 登录
- 其他社交选项 (Facebook, Twitter 等)
演示账号要求
审核关键点: 如果您的应用需要登录,请 必须 在 App Review Notes 中提供可用的演示凭据。
Demo Account Information:
Username: reviewer@demo.com
Password: ReviewTest123!
OR
Test Phone: +1 555-0123
Test OTP: 123456 (static for review)
Notes:
- This account has full premium features enabled
- All payment flows work in sandbox mode
- Account will reset daily
常见错误:
- 提供已过期的凭据
- 演示账号无法访问所有功能
- 未说明如何绕过手机验证
- 忘记提及沙盒支付详情
隐私政策与法律要求
两大应用商店现在都要求提供可访问的隐私政策和服务条款 在……之前 您的首次提交已通过审核。
隐私政策要求
您的隐私政策必须:
-
可公开访问
- 托管在公开 URL 上(无需登录)
- 可在标准 Web 浏览器中加载
- 需提供与 App 相同的语言版本
-
必须涵盖以下主题:
- 您收集哪些数据(请具体说明)
- 您如何使用所收集的数据
- 数据是否会与第三方共享
- 数据保留时长
- 用户权利(访问、删除、可移植性)
- 隐私咨询联系方式
- 儿童隐私(若应用面向 13/16 岁以下用户)
-
在应用内提供链接
- 可在设置或账户页面访问
- 必须一键可达(不能藏在菜单深处)
- 应在默认浏览器或应用内浏览器中打开
隐私政策托管在哪里
方案 1:自有网站 (推荐)
https://yourapp.com/privacy-policy
https://yourapp.com/terms-of-service
方案 2:GitHub Pages (免费)
https://yourusername.github.io/app-privacy-policy
方案 3:隐私政策生成器 (快速入门)
重要提示:虽然生成器适合起步,但请确保政策准确反映您实际的数据处理方式。与您的 App 不匹配的通用模板会被标记。
服务条款要求
虽然并非总是强制要求,但强烈建议提供服务条款,且在以下情况下必须提供:
- 您提供应用内购买或订阅
- 您有用户生成内容 (UGC)
- 您提供了超出基础应用功能之外的服务
- 您需要法律保障
必须包含:
- 可接受使用政策
- 账号终止条件
- 责任限制
- 知识产权
- 争议解决流程
- 退款政策(尤其是 IAP)
应用内实现
// Settings or Account Screen
function LegalLinks() {
return (
<div className="legal-section">
<h3>Legal</h3>
<a
href="https://yourapp.com/privacy-policy"
target="_blank"
rel="noopener noreferrer"
>
Privacy Policy
</a>
<a
href="https://yourapp.com/terms-of-service"
target="_blank"
rel="noopener noreferrer"
>
Terms of Service
</a>
<a
href="https://yourapp.com/contact"
target="_blank"
rel="noopener noreferrer"
>
Contact Us
</a>
</div>
);
}
App Store 元数据要求
两大应用商店都要求在提交 App 时提供隐私政策 URL:
iOS - App Store Connect:
- App 信息 > 常规信息 > 隐私政策 URL
- 必须使用 HTTPS(HTTP 会被拒绝)
- 将显示在您的 App Store 页面上
- 添加包含真实联系方式的用户支持 URL
- 提交前请完成年龄分级问卷
Android - Google Play Console:
- 商店展示 > 商店设置 > 隐私政策
- 所有面向儿童的应用均需提供
- 强烈建议所有应用都提供
隐私营养标签 (iOS)
iOS 要求以“营养标签”格式进行详细的隐私披露:
必须声明的类别:
- 联系信息: 邮箱、姓名、电话号码
- 财务信息: 付款信息、信用卡、银行账户
- 位置: 精确或模糊位置
- 用户内容: 照片、视频、音频、消息
- 标识符: 用户 ID、设备 ID、广告 ID
- 使用数据:产品交互、广告数据、崩溃日志
- 诊断数据:崩溃数据、性能数据
为每种数据类型注明:
- 是否收集
- 是否关联用户身份
- 是否用于追踪
- 收集目的
常见错误:声称不收集数据,但你的分析 SDK 却在收集。请审计所有第三方 SDK 的数据收集行为。
Google Play 数据安全部分
与 iOS 类似,Android 也要求提供数据安全声明:
步骤:
- 前往 Play Console > 应用内容 > 数据安全
- 回答有关数据收集的问题
- 明确说明收集的数据类型
- 说明安全实践(如加密等)
- 提供隐私政策链接
严重: 此信息具有法律约束力。虚假陈述可能导致应用被下架及账号被封禁。
首次审核被拒的常见原因
了解应用被拒的原因,有助于避开以下问题:
1. 应用崩溃或无法启动
原因分析:
- 仅在模拟器上测试,未在真机上测试
- 缺少针对网络故障的错误处理
- 硬编码了无法访问的 API 端点
- 预设了特定的设备能力(如摄像头、GPS)
如何预防:
// Always implement proper error handling
async function loadData() {
try {
const response = await fetch('https://api.yourapp.com/data');
if (!response.ok) {
throw new Error(`HTTP ${response.status}`);
}
const data = await response.json();
return data;
} catch (error) {
// Show user-friendly error
showError('Unable to load data. Please check your connection.');
// Log for debugging
console.error('Data load failed:', error);
// Graceful degradation
return getCachedData();
}
}
测试清单:
- 在真机上进行测试(至少使用 2-3 款不同型号)
- 在弱网环境下测试(使用 Network Link Conditioner)
- 在飞行模式下测试
- 在权限被拒绝的情况下测试
- 在全新安装的状态下测试(无缓存数据)
2. 核心功能缺失或损坏
原因分析:
- 截图中的功能尚未实现
- 演示账号无法使用宣传的功能
- 展示了高级功能但尚未开发完成
- 应用内存在“即将推出”的占位符
如何预防:
- 务必在所有宣传功能完成后再提交
- 确保演示账号拥有完整权限
- 提交前移除或禁用未完成的功能
- 更新截图以确保与当前版本完全一致
3. 内容与年龄分级不符
原因分析:
- 分级设为 4+ 但应用包含社交功能
- 年龄分级与实际内容不符
- 缺乏审核的用户生成内容 (UGC)
- 包含指向未经审核外部内容的链接
如何设置正确的年龄分级:
iOS 年龄分级:
- 4+ (无不良内容)
- 9+ (偶尔出现轻微内容)
- 12+ (中度内容)
- 17+ (频繁/强烈内容)
Android 内容分级:
- 所有人
- 所有人 10+
- 青少年
- 成熟 17+
- 仅限成人 18+
重要提示: 如果用户可以互相分享内容,你需要:
- 内容审核系统
- 举报/屏蔽功能
- 清晰的社区准则
- 根据需要设置年龄门槛
4. 欺骗性或误导性元数据
原因分析:
- App 名称承诺了不存在的功能
- 使用竞品截图或效果图
- 虚假评论或评分操纵
- 描述中包含未经证实的最高级词汇
问题元数据示例:
❌ 错误示例:
- 应用名称:“最佳健身追踪器 - #1 应用”
- 描述:“有史以来最神奇、最具革命性的应用!”
- 截图:通用图库照片
✅ 正确示例:
- 应用名称:“FitTrack - 训练记录”
- 描述:“通过可自定义的训练计划和进度图表记录你的训练。”
- 截图:当前 build 的实际应用界面
5. 测试不足(尤其是 Android 封闭测试)
原因分析:
- 跳过必需的 14 天测试期
- 没有招募到足够的测试人员
- 测试人员并未真正使用 App
- 测试期间缺乏崩溃监控
如何预防:
- 在计划发布前 3-4 周开始招募测试人员
- 测试期间使用 Firebase Crashlytics 或类似工具
- 积极与测试人员互动(问卷、反馈表)
- 在发布到生产环境前修复关键问题
6. 缺乏合理理由的权限请求
原因分析:
- 请求了位置权限但并未实际使用
- 未说明用途便请求相机权限
- 未明确目的便请求访问联系人
- 非导航类应用请求后台位置权限
如何修复:
iOS - Info.plist:
<key>NSCameraUsageDescription</key>
<string>Camera access is required to scan QR codes for quick login.</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Location helps us show nearby fitness centers and outdoor running routes.</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>Photo library access lets you upload a profile picture and share workout photos.</string>
Android - 权限策略:
<!-- Only request what you actually need -->
<uses-permission android:name="android.permission.CAMERA" />
<!-- Use when-in-use rather than always for location -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!-- Avoid if possible -->
<!-- <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" /> -->
运行时权限请求:
import { Camera } from '@capacitor/camera';
async function takePicture() {
// Request with context
const permissionStatus = await Camera.requestPermissions();
if (permissionStatus.camera === 'granted') {
const photo = await Camera.getPhoto({
quality: 90,
allowEditing: true,
resultType: 'uri'
});
return photo;
} else {
// Explain why permission is needed
showDialog(
'Camera access required',
'To upload a profile picture, please enable camera access in Settings.'
);
}
}
iOS 特定要求
App Store 截图与预览
尺寸要求:
- 6.7” iPhone: 1290 x 2796
- 13” iPad: 2064 x 2752
- 12.9” iPad: 2048 x 2732
重要提示:如果您的 App 支持 iPad,则必须上传 iPad 截图。请勿将 iPhone 截图拉伸以适配 iPad 栏位。
截图最佳实践:
- 必须展示真实的 App 内容(禁止使用 Mockup)
- 移除状态栏或展示真实的系统内容
- 针对所有支持的语言进行本地化
- 避免过多的文字叠加
- 在前 2-3 张截图中展示核心功能
App Store Connect 元数据设置
提交前,请填写以下 App Store Connect 字段:
- 隐私政策 URL:iOS 应用必填
- 支持 URL:必填,且应指向真实的联系信息
- 年龄分级:完成问卷,以便应用可以发布
- App 审核信息:添加审核联系人;如需登录,请提供可用的演示账号;并为审核团队提供清晰的备注
- 出口合规性:回答加密问题,或设置
ITSAppUsesNonExemptEncryption中的Info.plist在合适的时候提供,这样每次 upload 时就不必重复相同的回答
App Review 前先做 TestFlight
在正式审核前完整跑一遍 TestFlight:
- 从 TestFlight 安装完全相同的 build
- 用你准备提供给审核人员的同一个账号登录
- 走一遍购买、恢复购买和取消订阅流程
- 确认审核人员无需隐藏设置即可访问核心功能
- 如果两者都支持,请在 iPhone 和 iPad 上测试
App 预览视频(可选但推荐)
要求:
- 时长 15-30 秒
- 必须展示真实的 App 操作画面
- 可以包含简短的文字叠加层
- 不得使用有版权问题的音乐
- 分辨率需与截图保持一致
Sign in with Apple 实现方式
上文已提及,但如果你有社交登录,这对 iOS 审核至关重要。
应用内购买要求
如果你提供数字商品或服务:
必须披露的信息:
- 购买前需展示清晰的价格
- 订阅条款说明清晰
- 取消订阅指引可见
- “恢复购买”按钮
符合规范的订阅界面示例:
function SubscriptionOffer() {
return (
<div className="subscription-screen">
<h2>Choose Your Plan</h2>
<PlanCard>
<h3>Monthly</h3>
<p className="price">$9.99/month</p>
<ul>
<li>Unlimited workouts</li>
<li>Personalized plans</li>
<li>Progress tracking</li>
</ul>
<button>Subscribe</button>
</PlanCard>
<PlanCard>
<h3>Annual</h3>
<p className="price">$79.99/year</p>
<p className="savings">Save 33%</p>
<ul>
<li>Everything in Monthly</li>
<li>Priority support</li>
</ul>
<button>Subscribe</button>
</PlanCard>
<div className="subscription-terms">
<p>
Subscription automatically renews unless cancelled at least
24 hours before the end of the current period. Manage your
subscription in Settings.
</p>
<button onClick={restorePurchases}>Restore Purchases</button>
</div>
<div className="legal-links">
<a href="/privacy/">Privacy Policy</a> |
<a href="/terms">Terms of Service</a>
</div>
</div>
);
}
Android 专属要求
Google Play Console 账号设置
在进行首次 Android 发布前,请确保 Play Console 账号和应用外壳已存在:
- 在以下地址创建开发者账号: Play Console 注册
- 在 Play Console 中,前往 首页 > 创建应用
- 选择默认语言、应用/游戏类型和支持邮箱
- 接受必需的 Play 政策、出口合规和 Play App Signing 声明
- 确定应用是否为 免费 或 付费
重要提示: Google 允许你之后将付费应用改为免费,但应用一旦免费提供过,就不能再改回付费。
App Bundle 要求
重要提示: Google Play 要求使用 Android App Bundle (.aab) 格式,而非 APK:
# Sync the native Android project first
bunx cap sync android
# Then build the release app bundle
cd android
./gradlew bundleRelease
目标 API 级别要求
当前要求: 新应用和应用更新必须以 Android 15(API 级别 35)或更高版本为目标。
在 android/app/build.gradle 中更新:
android {
compileSdkVersion 35
defaultConfig {
targetSdkVersion 35
minSdkVersion 23 // Minimum supported version
}
}
Google Play 数据安全
上文已提及,但这对 Android 应用审核至关重要。
封闭测试轨道(当前要求)
这是新创建个人开发者账号的最大难关:本指南前文详述的 12 名测试人员连续 14 天保持选择加入的要求。
时间线:
- 第 1 周:招募测试人员,设置封闭测试
- 第 2-3 周:活跃测试期(至少 14 天)
- 第 4 周:修复问题,准备正式发布
- 第 5 周:提交正式版审核
目标受众与内容分级
内容分级问卷:
- 所有 App 均需填写
- 预计耗时 10-15 分钟
- 用于确定年龄分级(全年龄、青少年、成人等)
- 每当内容变更会影响回答时,就更新它
涵盖主题:
- 暴力
- 性相关内容
- 粗俗语言
- 受管制物质
- 赌博
- 用户交互功能
重要提示: 如果你有用户生成内容或社交功能,必须披露并实施审核。
应用商店上架要求
必备素材:
- 应用图标 (512 x 512 PNG)
- 特色图片 (1024 x 500 JPG 或 PNG)
- 手机屏幕截图 (最少 2 张,最多 8 张)
- 7” 平板电脑截图 (可选,但建议提供)
- 10” 平板电脑截图 (可选,但建议提供)
描述规范:
- 简短描述 (最多 80 个字符)
- 详细描述 (最多 4000 个字符)
- 必须准确描述应用功能
- 不得包含联系方式或价格信息
提交前检查清单
在提交审核前,请对照这份详细清单进行自查:
技术要求
- App 能在真机上成功启动
- 截图中展示的所有功能均可正常使用
- 没有占位内容或“即将推出”内容
- 所有第三方 API 密钥均为生产环境密钥
- 已实现网络错误处理机制
- 权限请求包含清晰的用途说明
- 在弱网环境下 App 不会崩溃
- 已测试权限被拒绝的情况
- 已在支持的最低 OS 版本上完成测试
- 已检查并修复内存泄漏
身份验证与登录
- 若使用社交登录,需包含 Sign in with Apple (iOS)
- 已在审核备注中提供 Demo 账号凭据
- Demo 账号拥有全部功能权限
- 密码重置流程运行正常
- 退出登录功能运行正常
- 提供账号注销选项 (符合 GDPR/CCPA 要求)
法律与隐私
- 隐私政策可公开访问
- 已在 App Store 详情页添加隐私政策 URL
- 服务条款可公开访问 (如适用)
- 应用内已关联隐私政策 (设置页面)
- 隐私标签信息准确 (iOS)
- 数据安全部分已填写完毕 (Android)
- 已说明所有数据收集用途
- 已披露第三方 SDK 数据收集情况
内容与元数据
- 应用名称符合规范 (无关键词堆砌)
- 描述内容准确反映功能
- 截图展示的是当前真实的 App 界面
- 截图已针对所有支持的语言进行本地化
- 描述中未提及竞品
- 未使用未经证实的最高级词汇
- 年龄分级与实际内容相符
- 联系邮箱已启用监控
iOS 特有事项
- 已实现 Sign in with Apple(若使用了社交登录)
- 已提供所有要求的截图尺寸
- 若启用了 iPad 支持,已上传真实的 iPad 截图
- Info.plist 中的权限描述清晰明确
- 已添加包含真实联系方式的支持 URL
- 已在 App Store Connect 中添加隐私政策 URL
- 已完成年龄分级问卷
- 出口合规性回答正确
- 已提供 App Review 联系方式及长期有效的演示账号
- 目标 iOS 15.0 或更高
- 如有 IAP:价格清晰,且有恢复购买按钮
- 不要提及 Android 或其他平台
Android 特有要求
- 使用 App Bundle (.aab) 格式
- 目标 API 35 或更高
- 已完成内容分级问卷
- 已上传特色图片
- 若你的 Play Console 账号有要求,需完成封闭测试(12 名测试人员连续 14 天保持加入,且提交申请时至少仍有 12 人处于加入状态)
- 已检查并修复测试中的崩溃报告
- 不要提及 iOS 或其他平台
测试(Android 当前要求)
- 如果您的 Play 账号需要封闭测试,我们会招募 12+ 名测试人员
- 已创建封闭测试轨道
- 12+ 名测试人员连续 14 天保持选择加入状态,且您申请时至少有 12 人仍处于选择加入状态
- 测试人员确实使用了 App(而不只是安装)
- 测试期间已开启崩溃监控
- 已修复测试中发现的关键 Bug
- 已记录测试人员的反馈
审核备注:应包含哪些内容
出色的审核备注可能决定是秒过还是被拒。建议包含以下内容:
审核备注模板
APP REVIEW INFORMATION
=== Test Account ===
Email: reviewer@testapp.com
Password: TestReview123!
(This account has all premium features enabled)
(This account stays active during review)
=== Review Contact ===
Name: Jane Developer
Email: review@yourapp.com
Phone: +1 555-0100
=== Testing Instructions ===
1. Launch app and tap "Sign In"
2. Enter test credentials above
3. Navigate to "Dashboard" to see main features
4. Tap "Upgrade" to test subscription flow (sandbox mode)
5. Go to Settings > Account to see privacy policy and terms
=== Key Features to Test ===
- Workout tracking (tap "New Workout" on Dashboard)
- Progress charts (Analytics tab)
- Social sharing (Share button on workout details)
- Camera upload for profile picture (Settings > Profile)
=== Third-Party Services ===
- Firebase Authentication (for login)
- Stripe (for payments - sandbox mode)
- AWS S3 (for image uploads)
- Google Maps SDK (for location features)
=== Notes ===
- Location permission is optional, app works without it
- Camera permission only requested when uploading profile picture
- All subscription flows use Apple/Google sandbox environments
- Background location is not used
- Support URL and privacy policy are available from Settings > Account
=== Contact ===
For questions: developer@yourapp.com
Response time: Within 24 hours
iOS 专用审核备注
针对 iOS,还需包含:
=== Device Coverage ===
Tested on: iPhone 15 Pro Max, iPad Pro 13-inch
=== App Store Connect Metadata ===
Support URL: https://yourapp.com/support
Privacy Policy: https://yourapp.com/privacy-policy
=== Submission Notes ===
- iPad screenshots match the current iPad UI
- Export compliance answered for this build
- Sign in with Apple is available on the login screen
Android 专用审核备注
针对 Android,还需包含:
=== Testing Track Information ===
Closed testing period: [Start Date] to [End Date]
Number of active testers: 23
Critical issues found during testing: 2 (both fixed)
Test distribution method: Email invite list
=== Crash Data ===
Testing period crashes: 3 total
Crash rate: 0.8%
All crashes fixed in this build
=== API Levels ===
Target SDK: 35 (Android 15)
Min SDK: 23 (Android 6.0)
Tested on: Android 11, 12, 13, 14, 15
被拒后怎么办
别慌——被拒很常见,尤其是首次提交时。以下是应对方法:
被拒后的处理步骤
-
仔细阅读拒信
- 记下违反的具体准则(例如 4.3、5.1.1)
- 通读审核人员的意见
- 查看是否提供了截图
-
弄清问题所在
- 在官方文档中查阅该准则
- 在网上搜索类似案例
- 确认是误解还是真实问题
-
修复根本原因
- 不要只打补丁,要彻底修复
- 充分测试修复效果
- 记录您做了哪些更改
-
妥善回应
如果拒绝理由属实:
Thank you for the feedback. I have addressed the issue: Issue: Missing Sign in with Apple option Resolution: Added Sign in with Apple as a login option alongside Google Sign-In. The button appears on the login screen and follows Apple's design guidelines. You can test with the provided demo account or by creating a new account with Apple Sign-In. Changes made in: v1.0.1 (build 2)如果你认为这是误解:
Thank you for reviewing my app. I believe there may be a misunderstanding regarding [specific issue]: [Explain clearly with screenshots if needed] The functionality exists at: Settings > [specific location] I've added additional detail to the review notes to help locate this feature. -
及时重新提交
- 重新提交后审核通常更快(24-48 小时)
- 附上更新后的审核备注,说明修复内容
- 如有帮助,可引用之前的提交记录
常见拒审回复
拒审:“你的应用启动时崩溃”
响应:
I sincerely apologize for the crash. I have identified and fixed
the issue:
Root cause: The app attempted to fetch data before network
initialization completed, causing a null reference exception.
Fix: Implemented proper async initialization with error handling
and offline mode. The app now gracefully handles network issues.
Testing: Verified on iPhone 12 (iOS 17), iPhone 14 Pro (iOS 17.1),
tested with WiFi, cellular, and airplane mode.
Build version: 1.0.2 (build 3)
拒审:“缺少隐私政策”
响应:
Thank you for the feedback. I have added the privacy policy:
URL: https://myapp.com/privacy-policy
Location in app: Settings > Privacy Policy (tappable link)
Also added to: App Store Connect > App Information > Privacy Policy URL
The privacy policy covers all data collection as disclosed in the
Privacy Nutrition Labels.
拒审:“不符合 4.2 - 最低功能要求”
这比较棘手。意思是你的应用做得不够,不足以算作一个应用。请阅读 如何在 2026 年通过 App Store 审核 完整的 4.2 和 4.3 应对指南。申诉文本示例:
响应:
Thank you for the feedback. I'd like to clarify the app's
functionality:
Core Features:
1. [Feature 1 with specific details]
2. [Feature 2 with specific details]
3. [Feature 3 with specific details]
The app provides significant utility beyond a simple website by:
- Offline functionality for [specific feature]
- Native camera integration for [specific feature]
- Push notifications for [specific feature]
- Device hardware access for [specific feature]
Test account credentials have been provided to demonstrate all
features. Please let me know if you need additional clarification.
审核通过后的最佳实践
恭喜!你的应用已通过审核。以下是保持该状态的方法:
上线后的监控
需关注的核心指标:
- 崩溃率 (保持在 1% 以下)
- ANR 率 (Android - 保持在 0.5% 以下)
- App Store/Play Store 评分
- 评论内容 (回复所有评论)
- 用户反馈的 Bug
推荐工具:
- Firebase Crashlytics
- App Store Connect 分析
- Google Play Console Vitals
- Sentry 或类似的错误追踪工具
更新指南
提交更新时:
- 像首次提交时一样充分测试
- 如果 UI 有重大变化,请更新截图
- 如果数据收集有变化,请更新隐私标签
- 提供清晰的“新功能”说明
- 重大变更可考虑分阶段发布
保持合规
年度合规要求:
- 续订 Android 内容分级(每年必做)
- 数据处理方式变更时更新隐私政策
- 内容变更时检查并更新年龄分级
- 审计第三方 SDK 的合规性
持续监控:
- 及时关注指南变更
- 订阅 Apple/Google 开发者新闻邮件
- 参与开发者社区
- 关注 App Store/Play Store 政策博客
资源与延伸阅读
官方文档
Apple:
Google:
社区资源
- r/androiddev - Android 开发者社区
- r/iOSProgramming - iOS 开发者社区
- Stack Overflow - 技术问题
- 独立开发者社区 - 独立开发者社区
隐私政策工具
常见问题
什么是应用审核指南?
它们是 Apple 的 App Store 审核指南 以及 Google 的 开发者计划政策。审核人员会在发布前检查你的二进制文件、元数据、隐私披露以及账号设置。
2026 年应用审核需要多长时间?
Apple 的目标是 24 小时内审核 50% 的提交,48 小时内审核 90%。Google 对某些账号可能需要长达七天或更久。此外,在适用该规则时,新的个人 Play Console 账号还需要至少 12 名测试人员连续至少 14 天保持选择加入封闭测试,并且在你申请时仍有至少 12 名保持选择加入。
Apple 的五个指南章节是什么?
安全、性能、商业、设计和法律。性能涵盖完整性和元数据(包括 2.3)。法律涵盖隐私(包括 5.1)。
首次提交前我应该修复哪些问题?
可用的 Demo 登录账号、HTTPS 隐私和支持链接、真实的隐私标签、真机测试,以及与 build 一致的应用商店素材。完成 年龄分级问卷 (如果你的应用适用该规则)并在两个商店都填写。
指南 4.2 和 4.3 属于哪一类?
这些属于 Apple Design 拒绝项,针对内容单薄或重复的应用。请使用 如何在 2026 年通过 App Store 审核 针对该范围,而非此清单。
在 Apple 上发布应用需要多少费用?
查看 在 App Store 发布应用的成本 针对当前的注册和上架费用。
应用审核遇到困难了吗?
如果你感到无从下手,或者需要专家指导以确保应用一次性通过审核,我们随时为你提供帮助!
与我们的团队预约咨询通话 提供以下方面的个性化协助:
- App Store 和 Play Store 审核准备
- 隐私政策与法律文档审核
- Sign in with Apple 实现方案
- 测试策略与测试员招募
- 审核备注准备
- 被拒应对与申诉
- 完成 App 提交流程
我们的团队已帮助数百名开发者顺利应对 App 审核流程,能为你节省数周的试错时间。
总结
首次提交 App 可能让人望而生畏,但只要准备充分,你就能一次通过审核。请记住以下关键点:
- 尽早开始: 尤其是 Android —— 至少在计划发布前 3 周招募齐那 12 名测试员
- 隐私优先: 准备好隐私政策,并准确反映你的数据处理方式
- Apple 登录: 如果你使用任何社交登录,iOS 上必须包含 Sign in with Apple
- 彻底测试: 在真机上、弱网下以及权限被拒绝时进行测试
- 保持诚实: 准确的元数据和隐私披露可以避免被拒审及法律风险
- 详细的审核备注: 帮助审核人员快速理解你的 App
目前的 Android 测试要求会增加流程耗时,但最终能带来更优质的 App 并减少上线后的问题。建议为 Android 提交预留额外的 3-4 周时间,这样能更有把握取得成功。
祝你的 App 发布顺利!记住,即使被拒审也是一次学习机会。大多数成功的 App 在获批前都要经历多轮审核。
不想单打独斗? 预约咨询 并让我们的专家指导您完成整个流程。
应用通过审核后,需要帮助实现 Live Updates 吗?请查看 Capgo 的 live update 方案 无需应用商店审核即可实现无缝应用更新。
继续阅读 2026 版 App Review Guidelines
如果您正在使用这份 应用审核指南 清单来规划安全与合规,请将其与 加密 了解 Encryption 的实现细节, 合规性 了解合规部分的实现细节, Capgo 安全扫描器 了解 Capgo Security Scanner 的产品工作流, Capgo 安全 用于 Capgo 安全的产品工作流,以及 Capgo 信任中心 用于 Capgo 信任中心的产品工作流。