shuhelohelo’s blog

Xamarin.Forms多めです.

App Centerを通じてXamarin.Formsで作ったAndroidアプリをストアに公開する

docs.microsoft.com

Googleデベロッパー登録する

外部ツールからのAPIアクセスを許可する

App CenterからGoogle Play Storeにアプリを公開するために,Googl Play StoreのAPIを外部ツールが利用できるようにする必要があります.

まずはGoogle Play Consoleにログインします.

左側に設定という項目があるのでそれを選択します.

f:id:shuhelohelo:20200706185426p:plain

次にデベロッパーアカウント > APIアクセスを選択します.

f:id:shuhelohelo:20200706185754p:plain

新しいプロジェクトを作成ボタンを押します.

自分のGoogle Play ConsoleとリンクしたAPIプロジェクトが自動で作成されます.

f:id:shuhelohelo:20200706190416p:plain

一番下にサービスアカウントという項目があるので,サービスアカウントを作成ボタンを押します.

f:id:shuhelohelo:20200706190716p:plain

サービスアカウント作成ダイアログが表示されます.

f:id:shuhelohelo:20200706190833p:plain

これは作成の手順が示されているだけですので,まず手順1のGoogle API コンソールへのリンクをクリックします.

f:id:shuhelohelo:20200706191203p:plain

Google Cloud Platformのページが開きます.

f:id:shuhelohelo:20200706191426p:plain

上部に+ サービスアカウントを作成を押します.

サービスアカウントの作成ページが開きます.

以下のようにサービス名(任意)をつけて,作成ボタンを押します.

f:id:shuhelohelo:20200706193046p:plain

次のステップでは権限を設定します. ロールオーナーを選んで続行ボタンを押します.

f:id:shuhelohelo:20200706193731p:plain

次のステップはそのまま完了を押します.

f:id:shuhelohelo:20200706194103p:plain

一番最初のページに戻ってきます.リストに作成したサービスアカウントが追加されています.

f:id:shuhelohelo:20200706194413p:plain

キーIDの項目が「キーがありません」となっているので,キーを作成します.

操作の項目にあるアイコンをクリックして表示されるメニューから鍵を作成を選びます.

f:id:shuhelohelo:20200706194822p:plain

秘密鍵の作成ダイアログが開きます.

f:id:shuhelohelo:20200706195130p:plain

鍵をJSONファイルでダウンロードしますが,注意書きにもあるようにこのファイルは再発行できないので紛失しないように気をつけます.

キーのタイプにJSONを選択し,作成ボタンを押すとダウンロードされます.

ファイルを保管してGoogle Cloud Platformを閉じます.

Google Play Consoleに戻ると,以下のようにサービスアカウントがリストに追加されているので,アクセスを許可ボタンを押します.

f:id:shuhelohelo:20200706200216p:plain

権限などの情報が表示されます.ここではこのままユーザーを追加を押します.

f:id:shuhelohelo:20200706201020p:plain

Google Play Console側の手順はこれで完了?

App CenterでGoogle Play Connectionを作成する

App Centerの対象のアプリのページで,左側のメニューからDistribute > Storesを選択すると,以下のようなページが表示されます.

f:id:shuhelohelo:20200706202704p:plain

Connect to storeボタンを押します.

以下のように公開先の選択肢が表示されるので,Google Playを選択します.

f:id:shuhelohelo:20200706202859p:plain

次のステップではサービスアカウントを作成したときにダウンロードした秘密鍵JSONファイルをアップロードします.

f:id:shuhelohelo:20200706203207p:plain

最後のステップではGoogle Play Storeに公開されているアプリを指定します.

指定にはAndroidアプリのパッケージ名(例:com.harusoft.XFMyDecode2020)を指定します.

f:id:shuhelohelo:20200706203742p:plain

しかし,指定したアプリがPlay Storeに見つからない,と言われます.

f:id:shuhelohelo:20200706204026p:plain

App Centerはすでにストアにあるアプリのアップデートだけができる,とのことです.

App Center can only upload new versions to existing apps that are already published on to Google Play.

初回は手動でGoogle Play Storeに公開する必要があります.

Google Play Consoleでアプリを登録する

(長くなったのでこちらに移動.) shuhelohelo.hatenablog.com

追記)2020/10/9の夜にアプリがストアに公開されました.申請したのが10/6日だったので大体3日間かかりました.

play.google.com

公開されるとメールが届くので気長に待ちましょう.

Google Play Consoleでは以下のようにステータスが「公開中」に変わります.

f:id:shuhelohelo:20200710121820p:plain

App CenterでGoogle Play Connectionを作成する(続き)

まだ公開はされていませんが,ストアにアプリの情報が入ったのでGoogle Play Connectionを作成できるようになりました.

中断していた手順を再開し,ストアに公開したアプリのパッケージ名を入力します.

Connectionが作成され,以下のように表示されます.

f:id:shuhelohelo:20200707092900p:plain

App CenterのDistribute -> Stores -> Productionを選択すると,この時点では以下のように「何もないよ」という表示がされます.

f:id:shuhelohelo:20200710115508p:plain

App Centerで自動デプロイからストアへ

さて,現時点でmasterdevelopという2つのブランチがあり,ストアにはmasterブランチの内容でアプリを公開してあります.

f:id:shuhelohelo:20200710115603p:plain

申請してから公開されるまでの3日間で,ちょっとした修正があり,その修正はdevelopブランチで行いました.

このdevelopブランチの修正をmasterブランチにマージして,その際にストアに自動的にアップロードされるようにしたいと思います. 製品を自動アップロードするのが正しいのかはおいておいて.

上の画面でmasterブランチの🔧アイコンをクリックして設定画面を開きます.

Distribute buildsの項目でリリース先をStoreにします.

f:id:shuhelohelo:20200710120757p:plain

Select destinationというドロップダウンリストがあるので,Productionを選択します.

f:id:shuhelohelo:20200710120852p:plain

Release noteの項目を必要であれば記入し,Saveボタンを押します.

それでは,Githubのほうでdevelopをmasterにマージします.

f:id:shuhelohelo:20200710121354p:plain

App Centerのほうでmasterブランチのビルドがはじまりました.

f:id:shuhelohelo:20200710121547p:plain

ビルドが完了したあと,Google Play Consoleをみてみると,以下のようにアップデートを処理していますとなりました.

f:id:shuhelohelo:20200710122627p:plain

どうやらうまくいったようです.

数日後に処理が完了したらきっとまたメールが来ると思います.