はじめに
これまでいくつかの記事で触れてきましたが、ついに初めてのAndroidアプリをGoogle Play ストアで公開することができました!㊗️
本記事では、Expoで開発したアプリの紹介と、Google Play ストアへの公開手順について詳しく解説します。
アプリの概要
このアプリは、2つの商品の「価格」と「量」を入力するだけで、どちらの商品がお得かを瞬時に計算して表示します。
初めてのアプリということで、シンプルかつ実用的な機能に絞り、私自身が日常的に使いたいと思えるものを作りました。また、収益化の一環として広告も実装しています。
類似アプリが多数存在する中での審査通過を心配していましたが、問題なく承認されました。キーボードの挙動や画面レイアウトなど、使いやすさを重視して調整を重ねていますので、ぜひインストールしてご利用ください😊
アプリを公開するまでの手順
1. EASでストア提出用ビルドを作成
事前に、AdMobの広告ユニットIDを本番用にしておきます。
以下のコマンドでストア提出用のビルドを作成します。
eas build --platform android --profile production
- ビルド完了後、ExpoのダッシュボードからAABファイルをダウンロードします。このファイルは後ほどGoogle Play Consoleでアップロードします。
2. Google Play Consoleでアプリを作成
Google Play Consoleのホーム画面から「アプリを作成」をクリックします。
デフォルトの言語は、(後々は海外マーケットも狙っていきたいとは思いますが、一旦)日本語にしておきます。
アプリ/ゲームの区分を選択します。
申告事項に同意してアプリを作成します。
3. ストア掲載情報の設定
新規作成したアプリのダッシュボードから、「アプリのセットアップ」>「アプリに関する情報を提供し、ストアの掲載情報を設定します」のセクションに表示されているタスクを順次対応していきます。
プライバシーポリシーの設定
プライバシーポリシーのURLを設定します。
今回はCloudflare Pagesを使用して、HTMLファイルで作成したプライバシーポリシーを直接アップロードする形で公開しました。
アプリのアクセス権
- 認証が必要な機能がある場合は、事前に認証情報を連携する必要があります。
広告の設定
- アプリ内での広告表示の有無を申告します。
コンテンツのレーティング
- 年齢制限に関わるコンテンツの有無を申告します。画面の指示に従って回答を進めます。
ターゲットユーザー
アプリの対象ユーザー層を設定します。13歳未満をターゲットとする場合は、より厳格な基準を満たす必要があります。
今回のアプリは、一人で買い物をする可能性のある中学生以上を想定しているため、13歳以上を対象としています。
データセーフティ
収集するデータの種類を申告します。
今回は広告表示のみで、ユーザーデータの収集は行わないため、「いいえ」と回答しました。
行政アプリ
- 行政から配信されるアプリかどうかを申告します。
金融取引機能
- 金融取引機能をもつかどうか、どのような取引か、などを申告します。
健康
- 健康関連の機能があるかどうか、どのような機能か、などを申告します。
アプリカテゴリと連絡先情報
- アプリのカテゴリ、タグ、およびストアに表示する連絡先情報を設定します。
ストアの掲載情報
アプリ名、説明文、アイコン、フィーチャーグラフィック(検索結果一覧などに表示される横長の画像)、スクリーンショット等を設定します。
今回は、画像類はPowerPointで作成し、エクスポートしたものを使用しました。
4. 審査依頼
「公開の概要」タブから自動チェックを実行し、問題がなければ審査を依頼します。
今回、審査にかかった期間は約3日間でした(最大7日間の可能性あり)。
その後、パッケージ名の誤りにより新しいアプリとして再申請を行いましたが、2回目の審査は2〜3時間で完了しました。(ありがたい!!)
5. AdMobとの連携
AdMobで事前登録したアプリに、Google Play ストアの情報を紐づけます。
現在、ストアのURLを入力してもアプリが検索されないという課題が残っています。これはストア側のクローラーの更新に時間がかかるためだと考えられます。数週間待っても解決しない場合は、AdMobのフォーラムで質問したらすぐに解決したという記事がありましたので、しばらく待ってもダメなら同じように対応したいと思います。
さいごに
AdMobの連携に課題は残るものの、初めてのアプリを無事に公開することができました。
この一歩は、小さい一歩だが、偉大な一歩だ。(By Mick)
アプリのリリースを通じて、公開までの一連の手順を理解するという目標を達成できました。次は、データの記録や認証機能の実装にも挑戦していきたいと思います。