【Android】非公開のアプリでPlayプロテクトを回避する
AndroidのPlayストアに公開してないアプリでPlayプロテクトにブロックされないように回避したい!
概要
今回の記事では、AndroidのPlayストアに公開してないアプリでPlayプロテクトにブロックされないように回避する手順を掲載する。
Playストアを使わずにapkファイルから直接インストールする場合に表示されることのある(されないこともある)下図を回避したい。
2022年10月の時点でGoogleへのデベロッパー登録に$25(4,000円弱ほど)お金がかかります。
手順書
いくつか方法があって、3パターン挙げる。
Playプロテクトが表示される条件は公表されてないので、環境によってはこれらの方法が有効でないかもしれない。
Googleへのデベロッパー登録した後に内部テスト(またはクローズドテスト)としてapkをアップロードする
一番健全な方法。しかし、費用がかかる。
Google Playのデベロッパー向けのページよりデベロッパーとして登録する。この時に$25(4,000円弱ほど)登録料を支払う。この登録料は初回の一度のみ発生する。
その後、本人確認を完了させる。(運転免許証などの指定された書類の画像のアップロード)
ある程度の解像度(横幅1000px程度)で書類の四隅がちゃんと写ってる画像をアップロードする。私は、四隅がちゃんとスキャナーでスキャンしきれておらずアップロードし直すことになってしまった。
本人確認が無事に終わると「ID の確認が完了しました」という件名のメールがGoogle Play Consoleから届く。
Google Play Consoleでアプリを作成して、必要事項(かなり多い)を入力する。
「App Bundle エクスプローラ」の「新しいバージョンをアップロード」からAndroid Studioでビルドしたaabファイルをアップロードする。
アップロード後に「App Bundle エクスプローラ」のリストにバージョンが追加されるので行の右端の「→」をクリックする。
タブ「ダウンロード」の中にある「署名済みのユニバーサル APK」をダウンロードする。
アップロードから24時間過ぎた後にこのapkファイルからインストールするとPlayプロテクトを回避できる。
本人確認前にaabファイルをアップロードできるけど、Playプロテクトが回避できるようになるのは本人確認が完了した後になる。デベロッパーの身元の確認が取れてるということが重要なんだと思われ。
Playプロテクトを無効にする
該当のapkファイルをインストールするデバイスでPlayプロテクトを無効にする。
セキュリティ的におすすめしない。
下記に手順が掲載されてる。
一度もReleaseのapkをインストールせずDebugのapkをインストールし続ける
Debugでビルドしたapkをインストールする分にはPlayプロテクトが発動しない。
しかし、一度でもReleaseでビルドしたapkをインストールした後にDebugでビルドしたapkをインストールするとPlayプロテクトが表示されるようになってしまう。
下記のページでDebug用のdebug.keystore
を使うとPlayプロテクトが発動しないと記載されてるが、私の環境ではdebug.keystore
を使用してもPlayプロテクトが発動した。
まとめ(感想文)
お金はかかってしまうけども、 Googleへのデベロッパー登録した後に内部テスト(またはクローズドテスト)としてapkをアップロードする方法がオススメ。