Динамическое имя и имя пакета с использованием buildType и вариантов с Gradle

avatar
Truong Hieu
9 августа 2021 в 04:10
33
0
0

У меня есть измерение, содержащее 2 варианта, как показано ниже:

Размер: mode

  • lite: добавление имени приложения: Lite. Добавление имени пакета: .lite.
  • full: Имя приложения не добавляется Full. Добавление имени пакета: .full.

И buildTypes:

  • debug: добавление имени приложения: (Dev). Добавление имени пакета: .debug.
  • release: ничего не добавлять, потому что это должен быть файл выпуска.

Я хочу объединить его с buildTypes (debug, release), чтобы сгенерировать имя приложения и имя пакета на основе этих buildTypes и dimensions выше.

Поскольку я использовал имя приложения везде в приложении, поэтому я хочу сгенерировать его в файл strings.xml, если это возможно.

Вот примеры:

  • debug + lite: App Lite (Dev) com.androidapp.lite.debug
  • debug + full: App Full (Dev) com.androidapp.full.debug
  • release + lite: App Lite com.androidapp.lite
  • release + full: App Full com.androidapp.full

Я пока не нашел решения для имени приложения.

Вот что я пробовал для имени пакета, это работает, но выглядит плохо:


    def mode = ""
    def type = ""

    buildTypes {
        debug {
            type = ".debug"
            applicationIdSuffix("${mode}${type}")
        }
        release {
            type = ""
            applicationIdSuffix("${mode}${type}")
        }

    flavorDimensions "mode"

    productFlavors {
        lite {
            dimension "mode"
            mode = ".lite"
            applicationIdSuffix("${mode}${type}")
        }

        full {
            dimension "mode"
            mode = ".full"
            applicationIdSuffix("${mode}${type}")
        }
    }
Источник
Android Geek
9 августа 2021 в 05:19
0

Проверьте этот вопрос - coderhelper.com/questions/24303522/…

Ответы (0)