把 Moneyflow 上架 Google Play 商店
English Deutsch Español Français Português Italiano 日本語 한국어 Русский Türkçe Polski Nederlands Bahasa Indonesia
Moneyflow 最初是一款浏览器游戏。把同一款游戏搬上 Google Play,花的时间比打出 Android 构建本身长得多。下面是这个过程的诚实版本,按我们遇到每一步的顺序来写,这样如果你也在发布自己的游戏,就知道前方等着你的是什么。
1. 把网页游戏包装成真正的 Android 应用
Moneyflow 是一个 React 应用,所以我们用 Capacitor把它打包成原生 Android 项目,而不是重写游戏。应用 ID 是 com.playmoneyflow.app——值得知道的是,这个字符串是永久的。一旦包名在 Play 上发布,就永远不能被复用或改名,所以它是整条流程里少数真正无法撤销的决定之一。
Play 要求提交 Android App Bundle (.aab),而不是 APK,而且必须签名。我们让 Google 托管应用签名密钥,把上传密钥放在三年后我们还找得到的地方。丢了上传密钥可以恢复;丢了对应用详情页的控制权则不行。
2. 封闭式测试:没人提醒过你的那一部分
对于新的个人开发者账号,Google 要求先经过一段 有真实测试人员的封闭式测试之后,你才被允许申请正式版访问权限。这意味着要招募测试人员,让他们通过链接加入,并让他们在整个期限内真正保持参与,而不是只点一下按钮。
我们会换个做法:第一天就开始封闭式测试,哪怕构建很粗糙。
只有测试人员处于加入状态时,计时才会走。如果你等到游戏打磨完美,就白白给发布日期加了好几周。早点把一个难看的构建发到测试轨道,趁计时器在走时再打磨。
3. “数据安全”表单
这是一份声明,而 Google 会把它与你的应用实际所做的事交叉核对。你打包的每个 SDK 都算作你的行为,而不是它们的。就 Moneyflow 而言,我们必须交代的有:
- 账号信息:电子邮箱地址,用于通过 Google、Apple 或邮箱/密码登录。
- 应用活动:已保存的游戏、多人对局,以及与账号绑定的排行榜成绩。
- 购买记录:通过 Google Play 结算处理。
我们遵循的规则:如果某个字段含糊不清,就按更宽泛的类别如实描述行为。多申报不会让你付出任何代价。少申报则是政策违规,可能在应用已经上线之后把它下架,那一天要糟糕得多。
4. 内容分级,以及“这是赌博吗?”的问题
Moneyflow 是一款关于钱的桌游。它有骰子、资产和股市。这个组合总是稳稳地触发内容分级问卷里的提问,所以值得把区别讲精确:
- 玩家不能向游戏经济里存入真钱。
- 游戏内货币没有提现价值,也不能换回真钱。
- 游戏里没有任何东西是对现实世界结果的下注。
它是对金融决策的模拟,就像飞行模拟器不是飞行一样。字面、一致地回答问卷才是关键:分级是根据你的回答生成的,回答与实际游戏玩法不符,就是下架的理由。
5. 应用内购买
Play 要求每个商品都在你的应用能看到它之前就在 Play Console 里创建并激活,而且商品只会为已上传到测试轨道并带有结算权限的构建解析出来。这件事几乎让所有人中招:你的付费墙是空的,代码看起来完美无缺,而真正的问题是商店手里没有东西可给你。
我们最终有了跨多个档位的几十个商品,用网页表单一个个点太不可靠。我们改写了脚本来创建和审计它们,并用 RevenueCat作为应用与商店之间的一层,让同一套权益逻辑在 Android 和 iOS 上都能工作。测试购买需要在 Play Console 里配置许可测试人员账号:真实扣款绝不会发生,但完整的购买流程会走一遍。
6. 账号删除是强制的
如果你的应用允许用户创建账号,Google 要求提供删除该账号的方式,既要在应用内,也要通过一个可公开访问的网页 URL,这样已经卸载了应用的人,也能让自己的数据被删除。
我们差点在没有这一项的情况下提交了。Moneyflow 现在在应用内菜单里有账号删除,还有一个公开页面: playmoneyflow.com/delete-account。只要你支持登录,就在提交之前把这个做好,而不是等被拒之后。
7. 商店详情本身
详情页是营销资产,不是文书工作,大多数最终的安装决定都是在这里做出的。Play 要求提供:
- 应用名称(30 个字符)和简短说明(80 个字符)——人们真正会读的是简短说明。
- 完整说明(4000 个字符),会被 Play 搜索收录。
- 512×512 的应用图标,以及 1024×500 的功能图片。
- 手机截图,如果你想被列为适配平板,还需要 7 英寸和 10 英寸平板截图。
截图承担了最重的活。对一款桌游来说,在前两帧里展示真正的棋盘,胜过任何数量的说明文案:人们在滚动之前就已经通过图片做了决定。
8. 审核,以及真正会出什么问题
审核时间从几天到一周多不等,来自新账号的首次提交往往落在这个范围的慢端。据我们的经验,真正发生的拒绝几乎从来不是因为代码,而是因为围绕代码的元数据:与应用行为不符的数据安全回答、缺失的隐私政策 URL、展示了构建里已不存在的内容的截图,或者在清单里声明了权限却没有可见功能支撑。
刚开始时我们会对自己说的话
- 创建 Play Console 账号,并立刻开始封闭式测试。等待期是关键路径,也是你以后唯一无法压缩的东西。
- 在写商店详情之前,先写好隐私政策、条款和账号删除页面。它们是前置条件,不是你最后才收拾的文书工作。
- 把你本来要点超过十次的东西全部写成脚本。尤其是应用内购买商品。
- 每份问卷都按字面回答。这些表单会与你的实际应用比对,所以诚实的答案同时也是最快的答案。
- 给无聊的那一半留好预算。粗略地说,做出 Android 构建是较小的活;商店合规才是较大的那个。
现在就玩
Moneyflow 在 Android 上免费,在任何浏览器里也可以免费玩,地址是 playmoneyflow.com——无需安装,开始游戏不需要账号。选一个有真实收入、开支和债务的角色,然后积累足够的被动收入,逃离朝九晚五。