構築構成に基づいて値を変更


Androidの開発に必要な並列構成の1つは、階層構築構成です.
Debug/releaseバージョンに基づいて構成を変更する方法を簡単に説明します.
n/a.ターゲット
1.debug構築はdebugをテストし、release構築は自動タグアプリケーション名をテストする
2.構築をデバッグするときは、アプリケーションidの後にします.Debugを追加して個別のアプリケーションを作成

階層構成


通常、プロジェクトの作成時に2種類のgradleファイルが自動的に作成されます.
1.プロジェクト全体を担当するプロジェクトユニットの構築.階層ファイル
2.各モジュールを担当するモジュール(app)ユニットを構築する.階層ファイル
ここではメインモジュールのbuildです.Gradleは構築タイプに応じて構成を変更します.
新しいプロジェクトを作成したとします.
build.gradeファイルを表示する場合、buildTypeエントリは次のようになります.
buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
見るからに感覚があるbuildTypeという怪しい名前にreleaseエントリがあるのではないでしょうか.
コンストラクションの場合、コンストラクションのタイプがreleaseの場合、release内部の値が適用されます.
まず、デバッグ項目を追加します.
buildTypes {
        debug {
        
        }
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
次にdebug/releaseに宣言プレースホルダを追加します.
Placeholders=[]のフォーマットを宣言します.かっこに注意してください.
buildTypes {
        debug {
            manifestPlaceholders = [
            
            ]
        }
        release {
            manifestPlaceholders = [
            
            ]
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
宣言Placeholders、AndroidManifest.xmlファイルに変数のエントリを挿入できます.かっこから見える人もいますが、複数の項目を挿入することもできます.詳細はここです。を参照してください.
AndroidManifestですxmlで使用する変数をキー:値の形式で挿入します.
今回の目標は、debug構築時に「test debug」形式のアプリケーションラベルを変更することであるため、適切な鍵名を使用して追加します.
debug {
    manifestPlaceholders = [
       appLabel:"테스트debug"
    ]
}
release {
    manifestPlaceholders = [
       appLabel:"테스트"
    ]
このように構築時のタイプに応じてAndroid Manifestを使用します.xmlからappLabelキーに対応する値を取得して適用できます.
Manifestファイルに移動する前に、ターゲットが2のアプリケーションidの後にあります.まずdebugを貼っておきましょう
これは簡単に応用できる.アプリケーションIdSuffixをdebugエントリに追加します.
debug {
    manifestPlaceholders = [
       appLabel:"테스트debug"
    ]
    applicationIdSuffix ".debug"
}
...
今はAndroidManifestxmlに移動し、タグアプリケーション名のアプリケーション->labelパラメータを次のように変更します.
android:label="${appLabel}"
フォーマットを${M a n ificationPlaceholdersで宣言されたキー値}に変更し、gradlesyncを実行してエラーが消えないようにします.
この状態でdebug構築を実行すると、アプリケーションアイコンの名前が「test debug」になります.
この機能は、Manifestファイルをよりよく利用するのに役立ちます.