项目地址:github.com/brycegao/android-play-finance-compliance
一句话介绍:一套经过商业项目实战验证的 Android 金融 App Google Play 上架合规标准,独创「人工落地 + AI 强制校验」双版本架构,从编码阶段到上架阶段全流程杜绝合规漏洞。
前言:金融 App 上架 Google Play 到底有多难?
做过出海金融 App 的 Android 开发者大概都有这样的经历:
- 提审被拒,原因写得模棱两可,反复修改仍不通过
- 隐私政策、权限声明、Data Safety 填报,每个环节都可能踩坑
- 加密货币/跨境支付 App 审核更严,稍有不慎直接下架
- 市面上的合规文档要么太泛泛,要么只讲理论不落地
其实 Google Play 对金融类 App 的审核确实是最严格的一档——它涉及隐私合规、权限管理、数据安全、网络安全、金融产品政策、加密货币牌照等多个维度,任何一个环节出问题都会导致驳回。
这个开源项目就是专门解决这个痛点的。
这个项目是什么?
android-play-finance-compliance是一套完整的 Google Play 合规规范,专门面向:
- 金融交易类 App(股票、外汇、合约)
- 加密货币 App(交易所、钱包、DeFi)
- 跨境支付 App
- 理财/借贷类 App
| 特点 | 说明 |
|---|---|
| 🎯 行业专属 | 针对金融/加密货币高风险 App 定制,通用规范覆盖不到的痛点全部解决 |
| ✅ 实战落地 | 所有规则来自已上架商业项目的实战复盘,不是空泛理论 |
| 🤖 AI 赋能 | 独创双版本体系,AI 工具自动拦截违规代码,从编码阶段杜绝合规问题 |
| 📋 零驳回 | 汇总所有高频驳回原因与解决方案,覆盖 100% 常规审核风险 |
| 🔄 持续适配 | 跟进 Android 15 (targetSdk 35) 和 2026 年 Google Play 最新审核政策 |
双版本架构:为什么需要两个文件?
这个仓库最独特的设计是双版本体系:
📖 人工完整版(human)
文件:google-play-compliance-guide-human.md
面向开发者,内容详尽,包含:
- 原理说明 —— 为什么这样配置
- 代码示例 —— 直接可用的 Kotlin / XML / Groovy 代码
- 错误案例 —— 常见踩坑点和被拒案例
- 自查清单 —— 上架前逐项核对
- 驳回解决方案 —— 被拒后如何快速定位和修复
使用场景:开发者学习、Code Review、团队培训、上架前自查
🤖 AI 纯净版(AI)
文件:google-play-compliance-guide-AI.md
面向AI 编码工具(Cursor / Claude Code / Copilot 等),全部为:
- 硬规则 —— 没有解释,只有约束
- 强制拦截 —— 违规代码模式黑名单,AI 直接拒绝生成
- 红线标记 —— 任何代码输出必须对照检查
使用场景:导入 AI 编码工具,自动校验代码合规性,从编码阶段杜绝人为疏漏
举个例子:当你让 AI 生成一个权限声明代码,输入REQUEST_INSTALL_PACKAGES时,AI 会直接拒绝并警告:
⛔拦截:Play 渠道永久禁止声明 REQUEST_INSTALL_PACKAGES 权限。请通过 Product Flavor 彻底移除该权限。
这就是「人工 + AI」双版本的价值——人负责理解和执行,AI 负责不遗漏。
核心合规覆盖:12 大维度全覆盖
这份规范覆盖了 Google Play 金融类 App 审核的全部红线,无遗漏盲点:
1️⃣ 工程构建合规
- targetSdk 35 (Android 15) 版本锁定
- V2 签名、AAB 打包配置
- 混淆压缩、依赖版本固定
- 16KB 页面大小适配(2025 年 11 月起强制)
2️⃣ 隐私协议合规
- 双语离线隐私政策(本地 HTML 部署,无网络也可访问)
- 启动时隐私告知弹窗(阻断式,用户必须同意才可进入)
- 登录协议绑定、金融风险免责
- GDPR 条款与数据删除说明
3️⃣ 权限合规
- 最小权限原则,严格管控权限声明
- Play 红线权限隔离(
REQUEST_INSTALL_PACKAGES彻底移除) - 动态权限告知、高版本适配
- 过时权限
maxSdkVersion标注
4️⃣ 数据采集合规
- SDK 采集管控(Firebase、Sentry、Adjust、神策、友盟等)
- 崩溃日志脱敏(禁止上报截图、视图层级、PII)
- Data Safety 精准填报,与 SDK 行为一一对应
5️⃣ GDPR 强制合规
- 标准化 App 内账号注销流程
- 三步注销:前置条件校验 → 数据告知 → 身份验证 → 注销
- 资产余额校验,防止误操作
- 数据保留规则明示
6️⃣ 网络安全合规
- 生产环境 HTTPS 强制
- 证书隔离(生产不信任用户证书)
- 调试环境彻底剥离
- 渠道差异化网络安全配置
7️⃣ 金融专属加固
- 防备份(
allowBackup=false) - 防截图录屏(
FLAG_SECURE) - Root / Hook / 模拟器检测
- Play Integrity API 设备完整性验证
- 剪贴板安全(敏感数据禁止复制)
- 协程安全(禁止
GlobalScope处理金融业务)
8️⃣ 系统版本适配
- Android 13:通知运行时权限
- Android 14:前台服务类型声明
- Android 15:Edge-to-Edge 全屏适配(
enableEdgeToEdge()) - 16KB 页面大小对齐
9️⃣ 组件安全合规
- 导出组件严格管控
- ContentProvider 默认导出风险修复
- 仅 LAUNCHER / DeepLink / 推送落地页允许 exported
🔟 渠道隔离合规
- Flavor 多渠道隔离
- Play 渠道专属净化配置
- 测试/国内渠道不污染生产渠道
1️⃣1️⃣ 加密货币专项合规
- 重点司法管辖区牌照要求(MiCA / FSA / MAS / SEBI 等)
- 托管 vs 非托管钱包区分
- DeFi 合规与 Geo-blocking
- 多链安全审计要求
1️⃣2️⃣ Google Play 金融服务政策
- Financial Products 声明
- KYC 记录保留
- 内容评级与地区限制
AI 工具接入:让合规检查自动化
这个项目最实用的部分之一是AI 工具接入指南,支持一键将合规规则导入主流 AI 编码工具:
| AI 工具 | 配置文件 | 接入方式 |
|---|---|---|
| Claude Code | CLAUDE.md | 项目级上下文自动加载 |
| Cursor | .cursorrules | System Prompt 全局规则 |
| GitHub Copilot | .github/copilot-instructions.md | 自定义指令文件 |
| OpenAI Codex | Custom Instructions / System Prompt | ChatGPT 设置或 API 注入 |
| Windsurf | .windsurfrules | 项目级规则文件 |
一键合规自检
接入后,你可以在项目中直接输入自检指令:
# 在目标 Android 项目中启动 Claude Code claude
输入自检指令
请按照 specs/google-play-compliance-guide-AI.md 逐条校验本项目的合规性,输出标准化自检结论
AI 会自动扫描项目中的AndroidManifest.xml、build.gradle、SDK 初始化代码、网络配置等,输出类似这样的报告:
📊合规自检报告
- ✅ 合规项:47 项
- ⚠️ 中风险:8 项(建议修复)
- 🔴 高风险:4 项(必须修复,否则可能被拒)P0 必修项:
1. ContentProviderMyContentProvider未显式设置exported="false"→AndroidManifest.xml:156
2. Release 包未移除 Debug SSL 配置 →AppOkHttpClient.kt:23
3.allowBackup未设为false→AndroidManifest.xml:8
4. 隐私政策缺少数据删除说明 →privacypolicy-en.html
高频驳回问题:这份规范能解决哪些?
| ❌ 高频驳回问题 | ✅ 规范中的解决方案 |
|---|---|
| 隐私政策无效、缺失、无法离线访问 | 本地 HTML 双语离线部署 + 启动阻断式弹窗 |
| 无 GDPR 账号注销功能 | 标准化三步注销流程(含资产校验) |
| 违规权限声明(安装未知应用等) | Play 渠道 Flavor 彻底隔离 + AI 自动拦截 |
| Data Safety 数据错报、漏报 | 逐项匹配 SDK 行为的填报清单 |
| 明文 HTTP 网络请求 | Release 全局禁用 + 白名单特例 |
| 组件导出安全漏洞 | exported 严格管控 + ContentProvider 强制 false |
| 高版本系统适配缺失 | Android 13/14/15 逐版本适配指南 |
| 金融数据泄露隐患 | 防截图、防剪贴板、Root 检测、Play Integrity API |
| 加密货币无牌照 | 各司法管辖区牌照清单 + Geo-blocking 实施 |
| 未适配 16KB 页面大小 | NDK r27+ 适配步骤 + 验证方法 |
| AD_ID 权限问题 | 显式移除 / 声明 + Data Safety 披露 |
快速上手
团队开发
直接阅读specs/google-play-compliance-guide-human.md,按分阶段自查手册执行:开发前 → 编码中 → 打包前 → 提审前 → 被拒后复盘。
AI 强制约束
- 将
specs/google-play-compliance-guide-AI.md导入你的 AI 编码工具 - 详细配置方法见
specs/ai-tools-setup-guide.md - 用测试 Prompt 验证规则是否生效
上架前自查
使用 AI 自检 + 人工版 Checklist 双保险,确保零风险。
仓库结构
. ├── specs/ │ ├── google-play-compliance-guide-human.md # 📖 人工阅读完整版 │ ├── google-play-compliance-guide-AI.md # 🤖 AI 强制执行纯净版 │ └── ai-tools-setup-guide.md # 🔧 AI 工具接入指南 ├── result.png # 📸 合规自检效果截图 ├── AGENTS.md # Codex 项目指引 └── README.md
适配环境
- 适配应用:金融、加密货币、跨境支付、理财、交易类 Android App
- 系统版本:Android 7.0 ~ Android 15(minSdk 24 ~ targetSdk 35)
- 打包方式:AAB 官方上架包
- 审核标准:Google Play 2026 最新审核规范
写在最后
做金融类 App 出海,合规不是可选项,是生存线。
这份规范的每个规则都来自实际商业项目的上架经验和被拒复盘,不是泛泛而谈的"最佳实践"。如果你正在做金融/加密货币 App 出海 Google Play,希望这份规范能帮你少走弯路,一次通过审核。
📌 项目完全开源免费商用,全套规范、代码示例、Cursor规则、上线自查清单全部开源在Github:
👉 https://github.com/brycegao/android-play-finance-compliance欢迎 Star、Fork,持续更新最新合规规则与避坑方案。