as well as steer users away from lower-quality ones
Googleは、ユーザを低品質なアプリから遠ざける取り組みを発表しました。
Google Playの新しい個人アカウントのルール
この時点でかなりのパワーワードなのですが、そのための新しい個人アカウントのルールが発表されました。この背景には、アプリのインストール数と、ユーザのエンゲージメントの量が約3倍も変わるアカウントのアクティビティの差があったということです。そのアクティビティとは、 公開前にアプリのテストツールを使うか使わないかだったということです。
Google Play Consoleのテストツールには「内部テスト」「クローズドテスト」「オープンテスト」がありますが、個人開発者アカウントがアプリをリリースするためには、「クローズドテスト」を少なくとも2週間、少なくとも20人でアプリをテストすることが義務付けられます。以前はアプリの即時公開が許可されてたので、とても大きな変更となります。
個人的には、詐欺や不正行為が法人アカウントと個人アカウントで大きな差があったのかなとか、個人開発者のプロダクトがあまりに低品質なものが多く、レビューでは対応しきれなかったのかなとか背景にいろいろ想像を巡らせるところですが、一方で個人が20人以上のアプリテストユーザを確保して、毎リリース毎にテストしてもらうのはかなりハードルが高くなるのではないかと思っています。
テスターが14日間継続してオプトインする必要があります
テスターに参加したものの14日未満のテストユーザと、14日を15日以上かけたテストユーザ(※1日でも間があいたユーザ)はカウントされません
https://support.google.com/googleplay/android-developer/answer/14151465?hl=en#zippy=%2Care-there-any-more-best-practices-for-testing-that-i-might-find-helpful%2Cwhat-do-you-mean-when-you-say-testers-must-be-opted-in-for-the-last-days-continuously-before-i-can-apply-for-production
多分テスト20ユーザ代行ビジネスが流行ります。
Java/Kotlin開発者は苦難の時代に
将来的には様々な対応法が生まれるかとは思いますが、正直なところ、個人開発でJavaやKotlinを本番で使うのは現実的ではなくなったように感じます。使う場合は、誤字脱字レベルの修正レベルでも、2週間、少なくても20人でのテストが求められるって本当?!と思い続けてるのですが、現時点では本当のようです。
JavaやKotlinではLive Updateの仕組みは規約違反になるので、このベストプラクティスに従ってテストを行う以外に現時点では選択肢はないようです。
CapacitorやReact NativeユーザはLive Updateを使おう
CapacitorやReact NativeユーザはLive Updateが可能なので、これを更新戦略の軸に取り入れる必要があります。Google Playでは、 更新アルゴリズムでJavaやKotlinのネットワーク経由での更新は禁止していますが、これはWebアセットには適用されません。
This restriction does not apply to code that runs in a virtual machine or an interpreter where either provides indirect access to Android APIs (such as JavaScript in a webview or browser).
Android API (Web ビューやブラウザーの JavaScript など) へのアクセスが制限されているコードには適用されません。
ですので、Webアセットはネットワーク経由で更新し、プラグイン等のネイティブ部分は審査を受けるという切り分けを行うことができます。そのため、今まで以上にメジャーアップデートとマイナーアップデートの区別が重要になるでしょう(ここでのメジャーバージョンなどの考え方は、セマンティックバージョニングに従っています)。
まずメジャーアップデートは、プラグイン等ネイティブ部分の更新を含むものです。これは審査を受けるしかないので、20人2週間を前提にプランを立てましょう。多くのコミュニティでは、相互にテストをするチャンネルの用意がはじまってるようです。例えば、Capacitorは discordに #app-testers というチャンネルを用意したようです。友人知人だけではなく、こういったコミュニティに参加して相互にテスターになるのはひとつの手です。
そして、マイナー、パッチアップデートはLive Updateを利用しましょう。Webアセットの更新ですので、Capacitorの場合、Ionic teamが公式で提供しているAppFlowの利用が可能ですし、またコミュニティで capacitor-updater
というプラグインがでているので、これも利用可能です。
まとめ
この変更に対するGoogleの根拠は正当であり、この変更により、Google Playを利用するユーザはより優れた体験を得ることができると思います。開発者が徹底的にテストを推奨しているだけですので。
一方、私たち開発者としてはこの流れ(※個人的に法人アカウントもいつこの変更がきてもおかしくないと思っています)の中で、どのようにアプリの質を高めたまま、より早いリリースサイクルをつくっていくか、いろいろな方法を考えていきたいですよね。
それではまた。