HTML5 游戏上架 Google Play:Capacitor 教程
从游戏文件夹到签名的应用包,Play Console 的各项表单、新账号的 12 名测试者规则,以及我们自己的应用在 webview 里踩过的坑。

要把 HTML5 游戏上架 Google Play,流程是:用 Capacitor 把游戏文件夹包进一个原生 Android 项目,在 Android Studio 里构建签名的 Android App Bundle,在 Play Console 创建应用、填写内容表单,先把应用包上传到测试轨道,再发布到正式版。如果你的开发者账号是 2023 年 11 月 13 日之后注册的个人账号,Google 还要求先进行至少 12 名测试者、持续 14 天的封闭测试,之后才能申请正式发布。
这些事我们在自己的游戏上做过。2026 年 10 月,我们用 Capacitor 打包了 Ricopop 和 Velvet Pool,两款都已提交 Google Play 正式版审核,动作游戏 Little Ninja Dash 也一样。本文结合了 Capacitor、Android 和 Play Console 官方页面的内容(阅读于 2026 年 10 月 30 日)和我们自己发布记录里的经验。规则和要求会变,提交前请逐一查看文中提到的页面。
HTML5 游戏上架 Google Play 之前要准备什么
- 一个 Google Play 开发者账号。Google 收取一次性注册费 25 美元,并要求每位开发者验证身份。个人账号在发布前还必须通过 Play Console 移动应用,验证自己能使用一台 Android 设备。
- Node.js 和 Android Studio。Capacitor 的 Android 文档说明,Capacitor Android 应用通过 Android Studio 配置和管理。
- 一款能在自己的文件夹里离线运行的游戏,根目录有 index.html。
- 游戏的授权。我们的模板一份授权对应一个最终产品,你可以把这款游戏发布到任何地方,包括 Google Play 和 App Store,但不能转售模板本身。如果要收费或加入应用内购买,请先问我们,因为我们的条款写的是玩家免费使用或通过广告使用产品。
我们的模板版本是浏览器游戏。每个版本页面都写明不含原生应用构建,所以下面的步骤需要你自己完成,或者找我们报价代做。
查看 Velvet Pool,我们也为 Android 打包过的台球模板
第 1 步:用 Capacitor 包装游戏文件夹
Capacitor 需要一个 package.json、一个存放构建好的网页文件的文件夹,以及该文件夹根目录下的 index.html。它的入门页面提醒,index.html 必须有 head 标签,否则插件无法工作。下载的 HTML5 模板通常已经有这个文件夹,我们的模板里是 game/。
- 在新的项目文件夹里运行 npm i @capacitor/core 和 npm i -D @capacitor/cli。
- 运行 npx cap init。它会询问应用名称、应用 ID(反向域名,例如 com.yourstudio.yourgame)和网页文件夹。把 webDir 指向你的游戏文件夹。
- 运行 npm i @capacitor/android,再运行 npx cap add android,生成 android/ 项目。
- 每次修改游戏文件后运行 npx cap sync,把文件复制进原生项目。
- 运行 npx cap open android,在 Android Studio 中打开项目。
Capacitor 文档写明支持 API 24 及以上,也就是 Android 7 及以上。我们的 Android 项目就用这个最低版本。
我们的做法稍有不同:原生项目放在单独的 mobile/ 工作区,它把游戏复制到自己的网页文件夹里。网站版保持不动,只属于应用的东西,比如原生广告,都放在这个工作区。
第 2 步:构建并签名应用包
自 2021 年 8 月起,Google Play 上的新应用必须以 Android App Bundle(AAB)发布,不能再用 APK。在 Android Studio 中依次选择 Build、Generate Signed Bundle/APK,选 Android App Bundle,然后创建或选择一个 keystore。
这个 keystore 保存你的上传密钥。Google 的应用签名页面解释:使用 Play 应用签名(新应用首次发布时必须设置)时,应用签名密钥由 Google 保管,你用上传密钥给每次上传签名。上传密钥要保密,密码要够强,keystore 要存放在安全的地方。如果丢失或泄露,可以在 Play Console 申请重置上传密钥。
- 目标 API 级别:自 2026 年 8 月 31 日起,新应用和更新必须以 Android 16(API 级别 36)或更高版本为目标。在 android/app/build.gradle 里检查。
- 版本代码:每次上传前都要调高。每个上传过的应用包都会占用它的版本代码,所以我们每次构建前都先在 Play Console 查看当前最高值。
- 只发 release 版本:发往正式版的应用包里不能有调试菜单、测试广告 ID 或开发者快捷方式。
webview 里会出什么问题,我们怎么处理
在浏览器里运行良好的游戏,放进应用后表现可能不一样。下面是我们发布记录里遇到的问题,有官方文档解决办法的也一并写上。
Android 返回键
Capacitor 的 App 插件有 backButton 事件。文档说明,监听这个事件会关闭返回键的默认行为,由你决定返回键做什么;它还提供 App.exitApp() 用来关闭应用。在 Velvet Pool 里,我们让返回键打开暂停菜单,而不是直接关掉游戏。
暂停与恢复
同一个插件会触发 appStateChange、pause 和 resume 事件。玩家离开应用时,用它们暂停游戏、计时器和正在播放的广告,回来时干净地恢复。
localhost 上的调试开关
在应用里,Capacitor 从本地地址加载游戏。如果你的游戏在 localhost 上运行时会打开调试工具,那它在应用里也会打开。我们的构建脚本会强制关闭这些开关,关不掉就拒绝构建。
广告
我们的应用里不用网站的广告代码。在 Android 上,我们通过 Capacitor 插件使用原生 AdMob SDK,测试期间用 Google 的演示广告单元,只有正式版构建才用应用自己的广告单元。
布局和存档
在模拟器上,我们发现横屏时按钮被裁掉、长单词换行很难看,这些在浏览器版里都没有出现。每个界面都要在横竖两个方向测试,还要确认关掉再打开应用后进度还在。
查看 Ricopop,我们为 Google Play 打包的另一款模板
第 3 步:Play Console 设置与商店详情
在 Play Console 创建应用,然后逐项完成应用内容部分。我们每款游戏填写的表单有:隐私政策、应用访问权限、广告、内容分级、目标受众、数据安全、广告 ID,以及政府、金融和健康相关声明。
- 内容分级:Google 规定所有应用都必须有 IARC 分级,没有分级的应用会被下架。如实回答问卷即可获得。
- 数据安全:每个应用都必须填写,不收集数据的应用也一样。它必须反映第三方 SDK(比如广告 SDK)收集的数据,并且需要隐私政策链接。
- 目标受众:按你真正面向的玩家来填。分级和受众是两个独立的答案。
商店详情素材
- 应用图标:512 × 512 像素,32 位 PNG,最大 1024 KB。
- 置顶大图:1024 × 500 像素,JPEG 或不带透明通道的 24 位 PNG。
- 屏幕截图:每种设备类型至少 2 张,最多 8 张。对于游戏,Google 建议至少 3 张展示真实玩法的截图,16:9 横屏(至少 1920 × 1080)或 9:16 竖屏(至少 1080 × 1920)。
- 简短说明:最多 80 个字符。
第 4 步:先测试,再上正式版
我们的流程把内部测试放在第一位:用真实账号从 Play 安装应用,先玩一遍。然后再把版本推到正式版,接受 Google 的审核。
新个人账号的规则
Play Console 帮助中心写明,2023 年 11 月 13 日之后注册的个人开发者账号,必须进行封闭测试,至少 12 名测试者连续选择加入至少 14 天。之后在信息中心申请正式版访问权限,回答关于封闭测试、应用本身和正式发布准备情况的问题。把这两周算进你的上线日期。
向客户汇报时,要把几个状态分清楚:已上传到测试轨道、已提交审核、已获批准、已在 Google Play 公开,是四个不同的节点。我们自己的发布记录写的是提交日期,不是批准日期,本文也是如此。
我们的模板包含什么,以及我们能帮你做的部分
每个模板都附带可直接部署的游戏文件夹、可读的源码、使用手册和 6 个月支持(购买延长后为 12 个月)。支持范围包括安装和使用我们提供的文件,以及修复可复现的缺陷。Android 打包、原生广告、SDK 集成和商店发布都是单独的服务。
如果你不想自己操作 Android Studio,把模板、商店账号计划和截止日期发给我们。开工之前,我们会回复工作范围、价格和时间。定制工作没有公开价目表。
常见问题
把 HTML5 游戏上架 Google Play 要花多少钱?
Google 对开发者账号收取一次性 25 美元注册费。其他成本是游戏授权、商店美术素材和你的时间;如果请别人打包,就是一笔报价服务费。
在 Google Play 发布一定需要 12 名测试者吗?
只有 2023 年 11 月 13 日之后注册的个人开发者账号需要。这类账号必须先进行封闭测试,至少 12 名测试者选择加入至少 14 天,才能申请正式版访问权限。
用 APK 还是 AAB?
AAB。自 2021 年 8 月起,Google Play 上的新应用必须使用 Android App Bundle。APK 仍然适合把构建直接装到你自己的测试手机上。
应用能不能直接从我的网站加载游戏?
我们不这样做。我们把游戏文件打包在应用里,这样可以离线运行,也不依赖某个网站。Google 的垃圾内容政策也针对那些主要用途是在未经所有者许可的情况下以 webview 显示网站的应用。
你们的模板可以直接上架 Google Play 吗?
不能。它们是可以直接部署的浏览器游戏,商品页面写明不含原生应用构建。你可以按上面的步骤自己打包,也可以找我们报价代做。
