1. ホーム
  2. android

[解決済み] ビルドフレーバーによってアプリ名が異なる?

2022-05-17 11:47:20

質問

私は2つのビルドフレーバーを持っています。 フレーバー1 フレーバー2 .

私は自分のアプリケーションを、例えば " という名前にしたいと思います。 AppFlavor1 "フレーバー1 用にビルドしたときに " AppFlavor2 "フレーバー2のためにビルドするとき。

私が変更したいのはアクティビティのタイトルではありません。私は、電話メニューやその他の場所に表示されるアプリ名を変更したいのです。

から build.gradle フレーバーには様々なパラメータを設定できますが、アプリのラベルは設定できないようです。そして、私は、ある変数に基づいてプログラム的にアプリ ラベルを変更することもできません。

では、みんなはどのようにこれを扱っているのでしょうか?

どのように解決するのか?

スクリプトでメインの strings.xml を変更してソース管理を混乱させるリスクを冒す代わりに、Android Gradle ビルドの標準的なマージ動作に頼ってみてはいかがでしょうか。

私の build.gradle が含まれています。

sourceSets {
    main {
        manifest.srcFile 'AndroidManifest.xml'
        java.srcDirs = ['src']
        resources.srcDirs = ['src']
        aidl.srcDirs = ['src']
        renderscript.srcDirs = ['src']
        res.srcDirs = ['res']
        assets.srcDirs = ['assets']
    }

    release {
        res.srcDir 'variants/release/res'
    }

    debug {
        res.srcDir 'variants/debug/res'
    }
}

これで app_name 文字列を variants/[release|debug]/res/strings.xml . その他にも、変更したいことがあれば何でもどうぞ!