用途:把 Android 应用交付给测试者或发布到 Google Play,或为已上架应用推送更新。建议先做最小可用路径(几分钟内拿到测试链接),只有需要公开 Play 商品页时才走完整流程。
主要能力:
- 通过 GitHub Release 分发已签名 APK,任何人可侧载安装,无需 Play 账号。
- Play 内部测试:上传已签名 AAB,生成 opt-in 链接,无需审核。
- 开放测试与正式发布:需完整商店信息、内容分级、目标受众、数据安全等。
- 已上架应用更新:提升 versionCode/versionName,用同一上传密钥重建 AAB,提交审核。
- 商店素材生成、签名配置、安装归因与内置计数埋点。
必要用法:
- 侧载:JAVA_HOME=<jdk17> ./gradlew :composeApp:assembleRelease,再用 gh release create 发布 APK。
- 内部测试需 :composeApp:bundleRelease 生成 AAB,在 Play Console 创建应用、上传、保存并发布,测试者用 https://play.google.com/apps/internaltest/<trackId> 加入。
- 签名:keytool -genkeypair -v -keystore keystore/upload.jks -alias <a> -keyalg RSA -keysize 2048 -validity 10000 -storepass … -keypass … -dname "CN=…, O=…, C=…"。
- 归因:商店链接使用 referrer=utm_source%3D…%26utm_campaign%3D…,值需百分号编码;应用内可用 Play Install Referrer API。
限制与注意:
- 未经用户同意不得执行最终发布或“送审”,填写草稿和内部测试发布风险较低。
- 必须备份 keystore 与密码,丢失后无法更新同一 Play 商品页。
- 浏览器操作由用户自行登录,不接触密码与两步验证;Playwright 使用独立 Chromium 配置,无法直接复用用户已登录的 Chrome。
- 应用可能位于他人开发者账号,需检查“选择开发者账号”列表。
- 新个人账号可能需先完成封闭测试(≥12 名测试者 14 天)才能申请正式发布。
- AAB 不可直接安装,测试者需要 APK。
- 数据安全表单必须与应用实际行为一致,否则可能被暂停。
- 部分具体价格、平台支持范围等资料暂未提供。