Android Play Storeへのデプロイ
Capacitorを使用している場合は、Google Playへのデプロイに関するCapacitorのドキュメントも参照できます。
アプリのリリースビルドの生成
- Capacitor
- Cordova
Android用のリリースビルドを生成するには、ウェブアプリをビルドしてから次のCLIコマンドを実行します:
npx cap copy && npx cap sync
これにより、すべてのウェブアセットがコピーされ、プラグインの変更が同期されます。
次に、Android Studioを開きます:
npx cap open android
Android用のリリースビルドを生成するには、次のCLIコマンドを実行します:
$ ionic cordova build android --prod --release
これにより、アプリのconfig.xml
の設定に基づいてリリースビルドが生成されます。
Ionicアプリにはこのファイルにデフォルト値が設定されていますが、ビルドをカスタマイズするために変更することができます。
APKの署名
- Capacitor
- Cordova
Android Studioを使用してローカルでAABバイナリを作成するには:
- ビルドメニューを開く
- Generate Signed Bundle / APKを選択
- キーストアファイルでAABに署名するためのプロンプトに従う
詳細については、Androidのドキュメントを参照してください。
Google Play署名
まだAndroidアプリバンドルに切り替えていない場合は、Google PlayコンソールでPlay App Signingにオプトインする必要があります。
新しいアプリ
まず、Google Playコンソールで新しいアプリを作成します。アプリ署名を有効にするには、プロダクション、オープンテスト、クローズドテスト、または内部テストページのいずれかの新しいリリース画面に移動する必要があります。 以下のように新しいリリースボタンを選択します(リリースタイプは関係ありません。今すぐ新しいリリースを作成する必要はありません):
アプリの整合性セクションで、Change app signing keyボタンをクリックします:
次に、Export and upload a key from Java Keystoreオプションを選択します。これが、キーを保持し、Google Playがそれを使用して署名する唯一の方法です。Appflowを使用してクラウドでAndroidアプリをビルドする場合も、このオプションが必要です。キーストアファイルをAppflowにアップロードできます。
画面の指示に従ってキーストアを生成し、同じキーストアファイルをAppflowダッシュボードでアプリに署名するために使用できます。キーストアファイルの生成に関するヘルプが必要な場合は、こちらのドキュメントを参照してください。 生成されたzipファイルをアップロードすると、準備完了です!キーストアファイルで署名され たAABバイナリをビルドし、それをGoogle Playにアップロードします。
既存のアプリ
現在のところ、既存のアプリはAAB形式を使用する必要はありませんが、Play App Signingに登録することはできます。
アプリ署名にオプトインするには、アプリの以前のリリースに署名するために使用されたアプリ署名キーをアップロードする必要があります。セットアップ -> アプリの整合性に移動し、以下のスクリーンショットに示されている2つの方法のいずれかを選択します。キーがアップロードされると、Play App Signingに登録できます。
アプリサイズの縮小、パフォーマンスの向上、セキュリティの強化により、AABバイナリ形式はアプリ開発者とユー ザーの両方にとってメリットがあります。APK形式を使用している既存のAndroidアプリがある場合は、AABに移行して提供されるすべての優れた機能を活用することを検討してください。
まず、未署名のAPKに署名する必要があります。署名キーが既に生成されている場合は、これらの手順をスキップしてそれを使用します。 Android SDKに付属のkeytoolコマンドを使用してプライベートキーを生成します:
$ keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
このコマンドを実行し、プロンプトに回答すると、現在のディレクトリにmy-release-key.keystore
というファイルが作成されます。
このファイルを保存し、安全な場所に保管してください。紛失した場合、Google Playストアはこのアプリの更新を受け付けません!
未署名のAPKに署名するには、Android SDKに含まれているjarsignerツールを実行します:
$ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore HelloWorld-release-unsigned.apk alias_name
最後に、zip alignツールを実行してAPKを最適化する必要があります。
zipalign
ツールは/path/to/Android/sdk/build-tools/VERSION/zipalign
にあります。
例えば、macOSでAndroid Studioがインストールされている場合、zipalign
は~/Library/Android/sdk/build-tools/VERSION/zipalign
にあります:
$ zipalign -v 4 HelloWorld-release-unsigned.apk HelloWorld.apk
これにより、Google Playストアに受け入れられる最終リリースバイナリHelloWorld.apkが生成されます。
Google Playストアへのアプリの提出
リリースAAB/APKが生成されたら、Playストアのリストを作成し、AAB/APKをアップロードできます。
まず、Google Playストアデベロッパーコンソールにアクセスし、新しいデベロッパーアカウントを作成します。
Google Playでデベロッパーアカウントを作成するには、25米ドルの費用がかかります。
デベロッパーアカウントが作成されたら、Create an Application
をクリックします。
アプリの説明を記入し、スクリーンショットや追加情報を提供してください。 準備ができたら、生成された署名済みリリースAAB/APKをアップロードし、アプリを公開します。
アプリの更新
アプリが成長するにつれて、新機能や修正を加える必要があります。 アプリは、新しいバージョンをAppleに提出するか、Appflowのライブアップデート機能を使用して更新できます。
- Capacitor
- Cordova
iOS App Storeが更新されたビルドを受け入れるためには、config.xmlファイルを編集してバージョン値を増やし、上記の手順に従ってリリース用にアプリを再ビルドする必要があります。
In order for the Google Play Store to accept updated AAB/APK, the config.xml file will need to be edited to increment the version value, then rebuild the app for release following the instructions above.