Skip to main content

Gradle ビルド プロファイリングを有効にする

説明

すべての Gradle ビルドのパフォーマンス レポートを生成して保存し、ビルド速度の問題を特定したり、異なるビルドを比較したりします。

指示

Bitrise ワークフローで使用する Android または Gradle ステップに関係なく、Gradle の追加のコマンド ライン引数を定義するオプションがあります。追加- プロフィール関連する入力変数に追加して、Gradle タスクのパフォーマンス レポートを生成します。以下の例では、引数を Android 単体テスト ステップ。

  1. 追加 Android 単体テスト ワークフローに進み、必要な入力変数を設定します。

    • プロジェクトの場所: $PROJECT_LOCATION.

    • モジュール: $MODULE.

    • 変異体: $VARIANT.

    • 引数: --profile2.

  2. を追加 脚本 ワークフローの最後まで進み、レポート ファイルを圧縮し、ZIP ファイルをデプロイ ディレクトリにコピーします。

    #!/usr/bin/env bash
    # fail if any commands fails
    set -e
    # debug log
    set -x
    
    zip -r $BITRISE_DEPLOY_DIR/gradle-profile.zip $PROJECT_LOCATION/build/reports/profile

    Gradle は HTML レポートを build/reports/profile/、そのため、そのフォルダー内のすべてのファイル (HTML、CSS、および JS ファイル) を取得して圧縮し、ZIP アーカイブを次の場所に移動する必要があります。 $BITRISE_DEPLOY_DIR.このフォルダー内のファイルは、ビルド ページの アーティファクト タブ。

  3. アプリの手動ビルドをトリガーします。

  4. ダウンロードして解凍します gradle-profile.zip ファイルを開き、ブラウザで HTML レポートを開きます。

  5. に行く アーティファクト タブを開き、レポートでビルドのさまざまな側面を確認します。

    • 概要タブには、タスクの実行以外に費やされた時間が表示されます。

    • タスクの実行タブには、実行時間でソートされたすべてのタスクが一覧表示されます。

    • キャッシュされたタスクは次のようにマークされます最新の.これは、Bitrise キャッシュの手順複数のビルドのレポートを比較します。キャッシング

    Gradle の最適化のアイデアについては、 Googleのこの記事をチェックしてください.

    ビルド ログにのみタスクの実行時間を表示したい場合は、ビルド時間トラッカープラグイン。

bitrise.yml

- android-unit-test@1:
    inputs:
    - project_location: $PROJECT_LOCATION
    - module: $MODULE
    - arguments: "--profile"
    - variant: $VARIANT
- script@1:
    title: Collect Gradle profile report
    inputs:
    - content: |-
        #!/usr/bin/env bash
        # fail if any commands fails
        set -e
        # debug log
        set -x

        zip -r $BITRISE_DEPLOY_DIR/gradle-profile.zip $PROJECT_LOCATION/build/reports/profile
- deploy-to-bitrise-io@1: {}