各平台规范总览对比
快速了解七大主流应用商店在核心审核维度上的差异与共同要求
🍎
Apple App Store
iOS / iPadOS / macOS / tvOS
🔑账号费用个人 $99/年 · 企业 $299/年
⏱审核周期1–7 个工作日(平均 24–48h)
🛡审核严格度最严格 人工 + 机器双重
💰内购政策虚拟商品必须走 IAP,抽成 15–30%
🔒隐私要求必须填写隐私标签 + ATT 透明度框架
📱技术栈Swift/Obj-C · SwiftUI/UIKit · Public API only
🤖
Google Play
Android 全球版
🔑账号费用一次性 $25
⏱审核周期数小时–3 天(视类型)
🛡审核严格度较严格 自动为主
📦包格式要求AAB(Android App Bundle)优先
🎯API 级别目标 API ≥ 35(Android 15)
🔒隐私要求Data Safety Section 强制填写
🌸
华为应用市场
AppGallery Connect
🔑账号费用免费(需实名/企业认证)
⏱审核周期3–5 个工作日
📄资质要求营业执照 · 软著 · ICP 备案
🎯API 级别targetSdkVersion ≥ 30
🌐特殊规定特殊类型需安全评估报告
🔒隐私要求隐私政策 · 权限最小化
🟠
小米应用商店
小米开放平台
🔑账号费用免费(企业认证需打款验证)
⏱审核周期2–4 个工作日
📄资质要求营业执照 · 软著(必要)· 软件著作权
🚫禁止事项截图不得出现竞品水印
🔐权限审查严格审查过度权限申请
🔒隐私要求隐私政策链接 + 权限说明
🟢
OPPO 软件商店
OPPO 开放平台
🔑账号费用免费(企业认证)
⏱审核周期3–5 个工作日
📦包名规范包名规范要求严格,不能随意命名
📱体验审查启动速度 · 运行流畅度检测
📄资质要求营业执照 · 法人身份证
🔒隐私要求隐私政策 · 权限说明
🔵
vivo 应用商店
vivo 开放平台
🔑账号费用免费(企业认证)
⏱审核周期3–7 个工作日
📄资质要求营业执照 · 软著(必须)
🎨素材要求应用截图展示核心功能
📱体验审查运行稳定性 · 闪退检测
🔒隐私要求隐私政策 · 权限合理说明
💬
应用宝
腾讯开放平台
🔑账号费用免费(企业认证较严格)
⏱审核周期5–7 个工作日(最长)
💰支付限制微信/QQ 支付需提前申请报备
🚫重点管控马甲包 · 诱导分享 · 功能完整性
📱质量要求最高,功能不完善直接拒审
🔒隐私要求隐私政策 · 数据安全合规
核心规范横向对比
✅ 支持/要求 | ⚠ 部分要求 | ❌ 不要求/不适用
| 规范维度 | 🍎 App Store | 🤖 Google Play | 🌸 华为 | 🟠 小米 | 🟢 OPPO | 🔵 vivo | 💬 应用宝 |
|---|---|---|---|---|---|---|---|
| 隐私政策链接 | ✅ 强制 | ✅ 强制 | ✅ 强制 | ✅ 强制 | ✅ 强制 | ✅ 强制 | ✅ 强制 |
| 权限最小化 | ✅ | ✅ | ✅ | ✅ 严查 | ✅ | ✅ | ✅ |
| 软件著作权 | ❌ 不要求 | ❌ 不要求 | ⚠ 部分类型 | ✅ 强制 | ⚠ 推荐 | ✅ 强制 | ⚠ 部分类型 |
| ICP 备案 | ❌ | ❌ | ✅ 联网类 | ✅ 联网类 | ✅ 联网类 | ✅ 联网类 | ✅ 联网类 |
| 开发者账号年费 | ✅ $99–299 | ✅ 一次 $25 | ❌ 免费 | ❌ 免费 | ❌ 免费 | ❌ 免费 | ❌ 免费 |
| IAP / 内购管控 | ✅ 强制 IAP | ⚠ 推荐 | ❌ | ❌ | ❌ | ❌ | ✅ 需报备 |
| 应用功能完整性 | ✅ 严格 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ 最严 |
| UI/UX 流畅度检测 | ✅ | ⚠ | ⚠ | ⚠ | ✅ 检测 | ✅ 检测 | ✅ |
| 崩溃/闪退检测 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| 儿童/未成年保护 | ✅ COPPA | ✅ COPPA | ✅ | ✅ | ✅ | ✅ | ✅ |
| 安全扫描(恶意代码) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| 账号删除功能 | ✅ 强制 | ⚠ 建议 | ⚠ | ⚠ | ⚠ | ⚠ | ⚠ |
🍎 Apple App Store 规范详解
最严格、最完善的审核体系,上架前必须逐条核对
UI & 设计规范
- 遵循 Human Interface Guidelines(HIG)使用原生 UI 组件,符合 iOS 设计语言,不破坏系统交互逻辑
- App 名称 ≤ 30 字符标题不得含价格、促销信息或无关关键词
- 截图展示实际功能界面不得仅为封面图或登录页,须展示真实 UI 和核心功能
- 广告须有明显关闭按钮插播广告必须提供清晰可见的关闭/跳过按钮
- 支持动态字体(Dynamic Type)适配用户字体大小设置,提升无障碍体验
- 支持暗色模式(Dark Mode)iOS 13+ 用户普遍使用暗色模式,需适配
隐私与数据规范
- 填写隐私营养标签(Privacy Nutrition Labels)在 App Store Connect 中如实填写数据收集项和用途,2025 年起加强审查
- App 内提供隐私政策入口所有 App 必须在 App 内和 App Store Connect 中提供可访问的隐私政策链接
- 追踪前使用 ATT 弹窗跨应用追踪用户须先通过 App Tracking Transparency API 获得用户同意
- 提供账号删除功能支持账号注册的 App 必须在 App 内提供账号删除功能,数据须一并删除
- 权限申请遵循最小必要原则每项权限必须有清晰的用途说明,过度申请将被拒审
技术规范
- 仅使用 Public API禁止调用私有 API;必须在当前发布的操作系统上运行
- 支持纯 IPv6 网络App 必须能在仅支持 IPv6 的网络环境中正常工作
- 不下载执行未审核代码不得通过 OTA 方式下载、安装或执行改变 App 功能的代码(JSPatch 等禁止)
- 崩溃零容忍提交前须充分测试,不接受存在崩溃或严重 bug 的包体
- Web 内容使用 WebKit展示网页内容须使用 WebKit 框架,不得使用自定义浏览器引擎
内购与支付规范
- 虚拟商品/服务必须走 IAP解锁功能、虚拟货币、订阅等必须使用苹果内购,不得使用第三方支付替代
- 战利品箱披露获取概率提供随机虚拟物品的购买前须公开各物品获取概率
- 订阅期最少 7 天订阅制 App 的最短周期不得低于 7 天,须支持全设备访问
- 积分/游戏货币不设过期用户购买的虚拟货币不建议设置过期时间,否则易被拒审
🤖 Google Play 规范详解
全球最大安卓分发平台,政策较 iOS 宽松但技术要求持续升级
2025–2026 核心技术规范
- 目标 API 级别 ≥ 35(Android 15)2025年8月31日起,所有新应用和更新必须 targetSdkVersion ≥ 35
- 支持 16KB 内存页大小2025年11月1日起,含原生代码(C/C++)的应用在 64 位设备上必须支持 16KB 页面
- 推荐使用 AAB 格式Android App Bundle 格式,Google 会自动优化分发,减小安装包体积
- 应用签名托管(Play App Signing)一旦使用,签名密钥不可更改,需在首次上架时慎重规划
隐私与数据安全
- 填写 Data Safety Section在 Play Console 中如实声明数据收集类型、用途、是否共享第三方
- 提供隐私政策链接应用详情页和 App 内均需提供可访问的隐私政策
- 敏感权限运行时申请位置、相机、通讯录等敏感权限必须在需要时动态申请,不得一次性申请全部
- 遵循 GDPR / CCPA面向欧美用户的应用需遵守 GDPR、CCPA 等数据保护法规
内容与商务政策
- 遵守内容政策禁止色情、赌博、仇恨、恶意软件、虚假信息等内容
- 广告展示合规广告须符合政策,不得欺骗用户、遮挡核心内容或难以关闭
- 禁止欺骗性行为不得虚假宣传功能、模仿其他 App、操纵评分评论
- 适配多种屏幕尺寸支持手机、平板、折叠屏等多种 Android 设备形态
🇨🇳 国内安卓市场规范
华为、小米、OPPO、vivo、应用宝五大核心平台,均遵循国内数据安全法规
通用资质要求(所有国内平台)
🏢 企业开发者
- ✅ 营业执照(有效期内)
- ✅ 软件著作权登记证书
- ✅ ICP 备案号(联网类必须)
- ✅ 法人身份证正反面
- ⚠️ 安全评估报告(特殊类型)
👤 个人开发者
- ✅ 身份证正反面
- ⚠️ 金融类通常不允许
- ⚠️ 社交/直播类受限
- ❌ 部分高级类型不可用
📱 应用素材
- 🖼 图标:1024×1024px PNG
- 📸 截图:至少 3–5 张
- 📝 描述:100–500 字
- 🔑 关键词:5–10 个
- 🔗 隐私政策链接(强制)
国内特有法规合规要求
🔴 个人信息保护法(PIPL)
- 收集个人信息须告知并取得同意
- 不得过度收集、强制授权
- 用户有权撤回授权、删除数据
- 违规最高罚款 5000 万元
🟡 数据安全法
- 数据分级分类保护
- 重要数据出境需评估
- 建立数据安全管理制度
- 定期进行安全评估
🔵 ICP 互联网信息服务管理
- 联网 App 必须完成 ICP 备案
- 新闻/金融类需特定许可证
- 境外主体需设立境内实体
- 违规将被下架并罚款
🟢 APP 专项治理要求
- 不强制获取非必要权限
- 不频繁申请权限
- 不私自传输用户数据
- 提供隐私政策且易于查找
常见被拒原因 TOP 10
- 隐私政策缺失或不完整没有隐私政策链接,或政策内容与实际数据收集不符
- 过度申请权限申请与功能无关的权限,如工具类 App 申请通讯录权限
- 资质文件不齐全软著缺失、营业执照过期、ICP 备案未完成
- 应用崩溃/闪退在主流机型上存在启动崩溃或运行时崩溃
- 功能描述与实际不符应用截图、描述夸大功能或展示未实现的功能
- 诱导分享/强制分享行为要求用户分享到社交媒体才能使用功能
- 广告关闭按钮不明显广告弹窗无关闭按钮或关闭按钮过小/不可点击
- 包含违规内容色情、赌博、暴力、政治敏感等违规内容
- 签名错误/不一致使用调试签名而非发布签名,或更新时签名不一致
- 未适配最低 targetSdkVersion未满足各平台对目标 API 级别的最低要求
🎨 通用 UI 设计规范
基于 Apple HIG、Material Design 3 及国内主流平台要求,提炼出的跨平台 UI 设计规范
🖼 应用图标规范
原始尺寸1024 × 1024 px
格式PNG,无透明背景
圆角平台自动裁切(提供直角原图)
iOS 要求无 Alpha 通道,无圆角
Android 要求支持自适应图标 (Adaptive Icon)
前景层安全区中心 66% 范围内
📸 应用截图规范
iPhone 主尺寸1290 × 2796 px (6.7")
Android 推荐1080 × 1920 px (16:9)
最少数量3 张(推荐 5–8 张)
格式PNG / JPEG,≤ 3 MB/张
内容要求展示真实功能界面
文字叠加可加说明文字,需清晰
🔤 字体与排版规范
iOS 字体SF Pro / SF Rounded
Android 字体Roboto / Noto Sans SC
最小可读字号12sp / 12pt
正文字号14–16sp
标题字号18–24sp
行高建议字号 × 1.4–1.6
🎨 色彩规范
对比度要求文字 ≥ 4.5:1(WCAG AA)
大文字对比度≥ 3:1(18pt 及以上)
主色调1–2 个品牌色
适配暗色模式强烈建议(iOS / Android)
不纯用颜色传达须同时使用图标/文字
状态颜色成功绿/警告黄/错误红
👆 触控与交互规范
最小触控目标44×44 pt(iOS)/ 48×48 dp(Android)
按钮间距≥ 8dp,避免误触
响应时间点击反馈 ≤ 100ms
加载状态超过 1s 须显示 Loading
手势冲突不覆盖系统手势区域
键盘遮挡输入框须随键盘弹起上移
♿ 无障碍(Accessibility)
VoiceOver/TalkBack所有 UI 元素须有描述标签
动态字体支持 Dynamic Type 缩放
色盲友好不纯用颜色区分信息
动画支持减弱动效(Reduce Motion)
焦点顺序逻辑清晰的键盘/焦点导航
iOS 2025新增可访问性标签(必须填写)
隐私弹窗 & 权限申请设计规范
各平台通用最佳实践
✅ 正确做法
- 📝 首次使用时展示隐私政策摘要
- 🎯 在需要权限的功能触发时申请
- 💬 说明权限用途("用于扫描二维码")
- 🔄 拒绝后降级功能而非强制退出
- ⚙️ 设置页提供权限管理入口
❌ 禁止做法
- 🚫 启动时一次申请所有权限
- 🚫 拒绝权限后反复弹窗骚扰
- 🚫 不说明用途直接申请权限
- 🚫 强制授权才能使用基础功能
- 🚫 在后台静默收集位置数据
🏗 通用应用架构方案
基于各平台规范约束,设计出符合上架要求、可维护、可扩展的通用应用架构
五层应用架构(Layer Architecture)
兼容 iOS(MVVM + Clean Architecture)& Android(MVVM + Jetpack)
🎨 UI 表现层(Presentation Layer)
View / Page
ViewModel / Presenter
UI State 管理
主题 & 样式
无障碍适配
多语言(i18n)
↓
💼 业务逻辑层(Domain Layer)
UseCase / Interactor
业务规则
权限管理模块
隐私合规模块
账号管理(含注销)
内购管理
↓
⚙️ 服务层(Service Layer)
API 网关(HTTPS Only)
推送通知服务
分析 & 埋点(GDPR 合规)
崩溃监控(Crashlytics)
A/B 测试
远程配置
↓
💾 数据层(Data Layer)
Repository 模式
本地数据库(加密存储)
安全 Keychain / Keystore
网络请求(SSL Pinning)
缓存策略
数据脱敏
↓
🔧 基础设施层(Infrastructure Layer)
依赖注入(DI)
日志系统
网络监测
加固混淆(Android)
应用签名管理
CI/CD 流水线
合规核心模块设计
专门应对各平台审核要求的功能模块
🔒 隐私合规模块
- 📋 隐私政策版本管理 & 更新提示
- ✅ 用户同意状态持久化存储
- 🎛 权限申请统一管理器(PermissionManager)
- 📊 数据收集声明(对应 Data Safety / Privacy Labels)
- 🗑 数据删除接口(账号注销时触发)
👤 账号安全模块
- 🔑 Token 管理(安全存储 + 自动刷新)
- 🗑 账号注销功能(苹果强制要求)
- 🔐 生物识别登录(Face ID / Touch ID)
- 📱 多设备登录管理
- 🛡 防截屏(金融类应用)
💰 内购 & 支付模块
- 🍎 StoreKit 2(iOS IAP)
- 🤖 Google Play Billing Library
- 🧾 收据验证(服务端)
- 🔄 订阅状态同步
- 🌐 国内支付(微信/支付宝 SDK 合规接入)
📊 监控 & 质量模块
- 💥 崩溃收集(Firebase Crashlytics)
- ⚡ 性能监控(ANR、启动时间)
- 📈 用户行为埋点(合规授权后)
- 🔔 远程配置 & 功能开关
- 🔄 强制更新机制
推荐技术选型(符合平台规范)
| 维度 | iOS 原生 | Android 原生 | 跨平台(推荐) |
|---|---|---|---|
| UI 框架 | SwiftUI / UIKit | Jetpack Compose / XML | Flutter 3 / React Native |
| 架构模式 | MVVM + Clean Arch | MVVM + Hilt + Room | BLoC / Redux / Zustand |
| 依赖注入 | Swinject / DIKit | Hilt / Koin | get_it / InversifyJS |
| 本地存储 | CoreData / SwiftData | Room Database | Hive / SQLite / Drift |
| 安全存储 | Keychain Services | Android Keystore | flutter_secure_storage |
| 网络请求 | URLSession / Alamofire | Retrofit + OkHttp | Dio / Axios |
| 崩溃监控 | Firebase Crashlytics | Firebase Crashlytics | Firebase Crashlytics |
| 内购 | StoreKit 2 | Google Play Billing | in_app_purchase / RN IAP |
| 推送通知 | APNs + UNFramework | FCM (Firebase) | firebase_messaging |
| CI/CD | Fastlane + Xcode Cloud | Fastlane + GitHub Actions | Codemagic / Fastlane |
✅ 上架前终极检查清单
提交应用前,按此清单逐一核查,大幅降低被拒风险
必须满足(不达标必被拒)
强烈建议(达标能提升通过率)
加分项(提升用户体验和排名)
📋 资质与材料
- 营业执照(国内平台)/ 开发者账号(海外平台)确保证件在有效期内,企业信息与提交信息一致
- 软件著作权证书(小米/vivo 强制,其他推荐)申请周期约 1–3 个月,需提前准备
- ICP 备案(国内联网应用必须)域名和应用需完成 ICP 备案,特殊类型需 ICP 经营许可证
- 隐私政策(所有平台强制)内容需真实准确,包含数据收集项、用途、联系方式、更新日期
- 应用图标 1024×1024px PNG无透明通道,内容清晰,符合品牌调性
- 应用截图(至少 3 张)展示核心功能界面,不能是启动页或营销图片
🔐 隐私与权限
- 权限申请遵循最小必要原则删除所有 Manifest/Info.plist 中未实际使用的权限声明
- 每个权限有清晰的用途说明文本iOS NSUsageDescription、Android rationale 均需填写有意义的说明
- 隐私政策可在应用内访问通常放在"设置"→"关于"→"隐私政策",启动时展示摘要
- 实现账号注销功能(iOS 强制)注销后应清除用户个人数据,向服务端发送删除请求
- iOS 填写 Privacy Nutrition Labels在 App Store Connect 中如实声明所有数据收集类型
- Android 填写 Data Safety Section在 Play Console 中申报数据收集和数据共享情况
⚙️ 技术质量
- 在主流机型上无崩溃(覆盖最新3代 iOS + Android)使用 TestFlight / Firebase Test Lab 进行多设备测试
- 使用 Release 签名(非 Debug 签名)正式上架必须使用生产证书签名,签名保持一致不随意更换
- Android targetSdkVersion ≥ 35(Google Play)国内平台要求 ≥ 30,建议直接对齐最高要求
- 所有网络请求使用 HTTPS禁止明文 HTTP 请求,iOS ATS 默认要求,Android 9+ 默认禁止
- 冷启动时间 ≤ 2 秒OPPO/vivo 会检测启动性能,启动过慢可能被拒审或降权
- 包体积优化(移除未使用资源)iOS 使用 App Thinning;Android 使用 AAB 格式减小分发体积
- 实现 SSL Pinning(金融/医疗类应用)防止中间人攻击,提升数据传输安全性
🎨 UI & 用户体验
- 广告/弹窗有明显关闭按钮(≥ 44pt)各平台均明确要求广告可关闭,不得遮挡核心内容
- 不含诱导点击/误导性设计按钮文案清晰,不模拟系统弹窗,不假装下载进度
- 支持深色模式(iOS 13+, Android 10+)暗色模式用户占比高,未适配可能影响评分
- 适配刘海/打孔屏 & 底部安全区域使用 SafeAreaInsets 避免内容被遮挡
- 网络错误/空状态有友好提示避免显示技术性错误信息,用户友好的错误界面
- 支持 VoiceOver / TalkBack为所有可交互元素添加 accessibilityLabel,提升无障碍体验
标准上架流程
🔧
开发 & 测试
开发 & 测试
→
📋
资质准备
资质准备
→
🎨
素材制作
素材制作
→
✅
合规自查
合规自查
→
📦
打包签名
打包签名
→
📤
提交审核
提交审核
→
⏳
等待审核
等待审核
→
🎉
上线发布
上线发布
💡 若审核被拒:仔细阅读拒绝原因 → 针对性修改 → 重新提交,切勿无修改重复提交