Androidアプリバンドルの生成と展開
Bitriseを使用してAndroidAppBundleを作成することは、APKを生成することとほとんど同じです。コードからAndroidAppBundle(.aab)ファイルをコンパイルするには、いくつかのステップ入力を微調整してから、バンドルに署名してGooglePlayストアにデプロイする必要があります。
Bitriseを使用してAndroidAppBundleを作成することは、APKを生成することとほとんど同じです。あなたがしなければならないのは、いくつかを微調整することです ステップ コードからAndroidAppBundle(.aab)ファイルをコンパイルするための入力を入力し、バンドルに署名してGooglePlayストアにデプロイします。
バンドル作成をサポートするステップバージョン
次のステップは、指定されたバージョン以降である必要があります。古いバージョンのステップは、バンドルの作成をサポートしていません。
-
Androidビルド 0.10.0以降
-
Gradleランナー 1.9.0以降
-
Androidサイン 1.3.0以降
-
GooglePlayにデプロイする 1.6.0以降
Androidアプリバンドルファイルの生成
次のいずれかを使用して Android App Bundle を作成できます。 グラドルランナー ステップ または Android ビルド ステップ。
Gradleランナーステップの使用
ワークフローエディター
ビットライズ.yml
-
でアプリを開きます ビットライズ。
-
クリック
メインページのボタン。 -
を挿入します。 グラドルランナー 後のステップ Android単体テスト そして Android リント あなたのステップ ワークフロー。
-
クリック 構成 のセクション Gradleランナー。
-
の中に 実行するGradleタスク 入力フィールド、セット、たとえば、
bundleRelease
またbundleDebug
プロジェクトのバンドルを作成します。同じワークフロー内の APK と AAB
1 つのワークフローで Android App Bundle と APK を生成したい場合は、追加のタスクを指定できます。 実行するGradleタスク 入力フィールド: 入力値を設定します
bundleRelease assembleRelease
リリース バージョンを生成します。
-
を開きます
bitrise.yml
アプリのファイル。 -
を挿入します。
gradle-runner
後のステップandroid-unit-test
そしてandroid-lint
あなたのステップ ワークフロー。my-workflow: steps: - activate-ssh-key: run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}' - git-clone: {} - install-missing-android-tools: {} - android-lint: {} - android-unit-test: {} - gradle-runner:
-
の中に
gradle_task
の入力gradle-runner
、たとえば、次のように設定します。bundleRelease
またはbundleDebug
プロジェクトのバンドルを作成します。my-workflow: steps: - activate-ssh-key: run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}' - git-clone: {} - install-missing-android-tools: {} - android-lint: {} - android-unit-test: {} - gradle-runner: inputs: - gradle_task: bundleRelease
同じワークフロー内の APK と AAB
1 つのワークフローで Android App Bundle と APK を生成したい場合は、追加のタスクを指定できます。
gradle_task
入力フィールド: 入力値を設定しますbundleRelease assembleRelease
リリース バージョンを生成します。
このようにして、ステップはAPKの代わりにAndroidアプリバンドルを生成します。
Androidビルドステップの使用
あなたは私たちのAndroidアプリのためのAndroidアプリバンドルを生成することができます Androidビルド ステップも:
ワークフローエディター
ビットライズ.yml
-
でアプリを開きます ビットライズ。
-
クリック
メインページのボタン。 -
を追加します。 Android ビルド 後のステップ Android単体テスト そして Android リント ワークフローのステップ。
-
Androidプロジェクトのルートディレクトリを プロジェクトの場所 入力フィールド。
-
に移動 ビルドタイプ 選択します
aab
ビルドタイプとして。同じワークフロー内の APK と AAB
1 つのワークフローで APK と Android App Bundle を生成する場合は、2 つ追加します。 Android ビルド 1 つを構成して Android App Bundle をビルドし、もう 1 つを構成して APK をビルドします。
-
を開きます。
bitrise.yml
アプリのファイル。 -
を追加します。
android-build
後のステップandroid-unit-test
そしてandroid-lint
ワークフローのステップ。my-workflow: steps: - activate-ssh-key: run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}' - git-clone: {} - install-missing-android-tools: {} - android-lint: {} - android-unit-test: {} - android-build:
-
Android プロジェクトのルート ディレクトリを指定します。
project_location
入力フィールド。 -
の値を設定します。
build-type
に入力するaab
。my-workflow: steps: - activate-ssh-key: run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}' - git-clone: {} - install-missing-android-tools: {} - android-lint: {} - android-unit-test: {} - android-build: inputs: - build-type: aab
同じワークフロー内の APK と AAB
1 つのワークフローで APK と Android App Bundle を生成したい場合は、2 つ追加します
android-build
次々に手順を実行し、1 つを Android App Bundle を構築するように構成し、もう 1 つを APK を構築するように構成します。
Android App Bundleを署名する
Android App Bundleファイルに署名することは、APKに署名することと同じです。
ワークフローエディター
ビットライズ.yml
-
キーストア ファイルを Bitrise にアップロードします。
-
ワークフロー エディターでワークフローを開き、 アンドロイドサイン ステップ ビルドステップの後。
-
次のことを確認してください キーストアのパスワード、 キーエイリアス そしてその キーパスワード 入力フィールドに入力します。
デフォルトの入力値
キーストアファイルをアップロードし、必要な資格情報を入力した場合は、 Androidサイン ステップの キーストアのURL、 キーストアのパスワード、 キーストアエイリアス、 そしてその 秘密鍵のパスワード 入力は自動的に入力されます!
-
を確認してください。 アプリのファイルパス 入力フィールドには、使用しているビルド ステップの出力と同じ出力環境変数が表示されます。
例えば、 Android ビルド 次のいずれかをエクスポートします
$BITRISE_APK_PATH
または$BITRISE_AAB_PATH
ステップが生成した APK および/または AAB ファイルを指す環境変数。デフォルトでは、この入力はこれらの環境変数を指します。さらなる構成オプション
利用可能なすべての構成オプションを確認してください。 アンドロイドサイン ワークフローエディターに進みます。あなたはできる:
-
メモリページのアライメントを有効または無効にします。 ページの配置 入力。
-
使用
apksigner
デフォルトの代わりにjarsigner
とともに apksigner を有効にする 入力。 -
特定のことを強制する 署名スキーム とともに APK署名スキーム 入力。
-
-
キーストア ファイルを Bitrise にアップロードします。
-
アプリ内で
bitrise.yml
ファイルに追加しますsign-apk
ステップ ビルドステップの後 - たとえば、android-build
-あなたの中で ワークフロー。sign-android-workflow: steps: - android-build: {} - sign-apk@1: inputs:
-
ことを確認してください。
keystore_url
、keystore_password
、 そしてkeystore_alias
入力は正しい場所を指します。sign-android-workflow: steps: - android-build: {} - sign-apk@: inputs: - keystore_url: "$BITRISEIO_ANDROID_KEYSTORE_URL" - keystore_password: "$BITRISEIO_ANDROID_KEYSTORE_PASSWORD" - keystore_alias: "$BITRISEIO_ANDROID_KEYSTORE_ALIAS"
デフォルトの入力値
キーストア ファイルを Bitrise にアップロードし、必要な認証情報を入力した場合は、入力をまったく設定する必要はありません。デフォルト値は、ステップで定義されています。
step.yml
構成ファイルは、キーストア ファイルと必要な認証情報を指します。 -
を確認してください。
android_app
入力フィールドには、使用しているビルド ステップの出力と同じ出力環境変数が表示されます。例えば、
android-build
次のいずれかをエクスポートします$BITRISE_APK_PATH
または$BITRISE_AAB_PATH
ステップが生成した APK および/または AAB ファイルを指す環境変数。デフォルトでは、この入力はこれらの環境変数を指します。このステップでは、この入力で指定された場所で署名するバイナリを検索します。
sign-android-workflow: steps: - android-build: {} - sign-apk@1: inputs: - keystore_url: "$BITRISEIO_ANDROID_KEYSTORE_URL" - keystore_password: "$BITRISEIO_ANDROID_KEYSTORE_PASSWORD" - keystore_alias: "$BITRISEIO_ANDROID_KEYSTORE_ALIAS" - android_app: "$BITRISE_APK_PATH\\n$BITRISE_AAB_PATH"
さらなる構成オプション
利用可能なすべての構成オプションを確認してください。
android-sign
介入する その step.yml ファイル。あなたはできる:-
メモリページのアライメントを有効または無効にします。
page_align
入力。 -
使用
apksigner
デフォルトの代わりにjarsigner
とともにuse_apk_signer
入力。 -
特定のことを強制する 署名スキーム とともに
signer_scheme
入力。
-
そして、あなたはやるべきです! Androidコード署名について詳しく知りたい場合は、ガイドをご覧ください。
AndroidアプリバンドルをGooglePlayにデプロイする
AABファイルのデプロイは、APKをGooglePlayにデプロイすることと大きな違いはありません。
アプリストアの配布前にバンドルを確認したい場合は、 Bitrise.ioにデプロイします 後のステップ Gradle Runner / Androidビルド ステップ。バンドルをにアップロードします アーティファクト ビルドのページのタブ。
初めてGooglePlayの展開を設定する
Google Playにデプロイすると、アプリがGoogleのオンラインストアに公開されます。初めてそれを行うとき、これは単にに展開するよりも少し多くの作業を必要とします bitrise.io。必要な構成が整ったら、それは非常に簡単になります。
Google Playのデプロイを初めて構成するときは、Google PlayデベロッパーアカウントをAPIプロジェクトにリンクし、APIアクセスを設定して、サービスアカウントのJSONキーをBitriseにアップロードする必要があります。
-
最初のAABまたはAPKを手動でGooglePlayにアップロードします GooglePlayコンソールを使用する。
-
リンク GooglePlayデベロッパーコンソールをAPIプロジェクトに変換します。
-
サービスアカウントを使用してAPIアクセスクライアントを設定する:Google Developer Consoleでサービスアカウントを作成するときは、選択する必要があることに注意してください
json
なので キータイプ。 -
あなたのサービスアカウントに必要な権利を付与します GooglePlayコンソール。に移動 設定、 それから ユーザーと権限、 それから 新しいユーザーを招待する。 Google Play Publisher APIの動作方法により、サービスアカウントに少なくとも次の権限を付与する必要があります。
-
アクセスレベル:アプリ情報を表示します。
-
リリース管理:本番リリースを管理し、テストトラックリリースを管理します。
-
店舗のプレゼンス:店舗のリスト、価格設定、配布を編集します。
-
-
オプションの手順として、ストアリストに翻訳を追加できます。 アプリを翻訳してローカライズする。
GooglePlayへのデプロイ
Google Play にデプロイするには以下が必要です 署名された APK または AAB ファイル そしてその Google Playのデプロイ ステップ。
ワークフローエディター
ビットライズ.yml
-
導入しようとしている場合は、 アプリ 初めて、 Google Playの設定が正しく設定されていることを確認してください そしてあなたは サービスアカウントのJSONキーをBitriseにアップロードしました。
サービスアカウントのJSONキーファイルのアップロード
サービス アカウントの JSON キーを Bitrise にアップロードすることをお勧めしますが、必須ではありません。他の場所に保存して、そのキーへの直接リンクを提供することもできます。
-
開く アプリ設定 ページを開き、 コード署名。
-
上の アンドロイド タブで、アップロードされたサービス アカウントの JSON キーを見つけて、その名前の下のシークレット Env Var をコピーします。
例えば、
BITRISEIO_SERVICE_ACCOUNT_JSON_KEY_URL
。 -
ワークフローを開き、を追加します GooglePlayデプロイ それにステップします。
-
の中に サービスアカウントのJSONキーファイルのパス を入力し、コピーした環境変数を貼り付けます。
サービスアカウントのJSONキーファイルへのダイレクトパス
サービス アカウントの JSON キーを Bitrise にアップロードしたくない場合は、ステップの入力フィールドにファイル パスを直接追加することもできます。ファイル パスはローカルまたはリモートにすることもできます。
-
リモート JSON キー ファイルの場合、値として任意のダウンロード場所を指定できます。たとえば、
https://URL/TO/key.json
。 -
ローカル JSON キー ファイルの場合は、ファイル パス URL を値として指定できます。たとえば、次のようになります。
file://PATH/TO/key.json
。
-
-
の中に パッケージ名 入力し、アプリのパッケージ名を追加します。
-
の中に 追跡 入力して、APKをデプロイするトラックを追加します(たとえば、alpha / beta / rollout / productionまたは設定したカスタムトラック)。
-
導入しようとしている場合は、 アプリ 初めて、 Google Playの設定が正しく設定されていることを確認してください そしてあなたは サービスアカウントのJSONキーをBitriseにアップロードしました。
サービスアカウントのJSONキーファイルのアップロード
サービス アカウントの JSON キーを Bitrise にアップロードすることをお勧めしますが、必須ではありません。他の場所に保存して、そのキーへの直接リンクを提供することもできます。
-
アプリを開きます
bitrise.yml
ファイルを追加して、google-play-deploy
そこに向かって進んでください。deploy-workflow: steps: - google-play-deploy: inputs:
-
の中に
service_account_json_key_path
入力するには、サービス アカウントの JSON キー ファイルへのパスを指定する必要があります。ファイルを Bitrise にアップロードした場合は、ワークフロー エディターの汎用ファイル ストレージにダウンロード URL を保存している環境変数を見つけることができます。
deploy-workflow: steps: - google-play-deploy: inputs: - service_account_json_key_path: "$BITRISEIO_SERVICE_ACCOUNT_JSON_KEY_URL"
サービス アカウントの JSON キーを Bitrise にアップロードしなかった場合は、入力に直接パスを設定できます。ファイル パスは、ローカルまたはリモートの場所を指すことができます。
-
リモート JSON キー ファイルの場合、値として任意のダウンロード場所を指定できます。たとえば、
https://URL/TO/key.json
。 -
ローカル JSON キー ファイルの場合は、ファイル パス URL を値として指定できます。たとえば、次のようになります。
file://PATH/TO/key.json
。
-
-
の中に
package
入力、追加 パッケージ名 アプリの。deploy-workflow: steps: - google-play-deploy: inputs: - service_account_json_key_path: "$BITRISEIO_SERVICE_ACCOUNT_JSON_KEY_URL" - package_name: myApp
-
の中に
track
入力として、アプリのバイナリをデプロイするトラック (たとえば、alpha/beta/rollout/production または設定したカスタム トラック) を追加します。deploy-workflow: steps: - google-play-deploy: inputs: - service_account_json_key_path: "$BITRISEIO_SERVICE_ACCOUNT_JSON_KEY_URL" - package_name: myApp - track: alpha
それで全部です!ビルドを開始またはスケジュールして、URLを外部テスターと共有するか、選択したアプリストアでアプリを配布してください。