Идентификатор приложения перезаписи вне типов и типов сборки - PullRequest
0 голосов
/ 25 апреля 2018

У меня есть приложение со многими вкусами (A,B,C) и двумя типами сборки (debug, release)

В типе сборки debug Я добавляю суффикс к идентификатору приложения, например:

debug {
    applicationIdSuffix '.debug'
}

Это хорошо для вкусов A и B, но я не могу добавить .debug к идентификатору приложения C.

Я смотрел на переопределение варианта, как и для versionCode, но не повезло.

    applicationVariants.all { variant ->
        def changedVersionCode = variant.versionCode
        variant.
        variant.outputs.each { output ->
            if (variant.buildType.name != "debug") {
                output.setVersionCodeOverride(project.ext.versionCode)
                changedVersionCode = project.ext.versionCode
            } 
        }
        changeApkFileName(variant,changedVersionCode)
    }

Можно ли переопределить идентификатор приложения вариантов в зависимости от вкуса. Например, я планировал сделать что-то вроде этого:

variant.buildType.name.replace('.debug','')

1 Ответ

0 голосов
/ 29 апреля 2018

Можно ли переопределить идентификатор приложения вариантов в зависимости от аромата

Да, это возможно.

Причина, по которой вы не видите ожидаемый идентификатор:

Поскольку Gradle применяет конфигурацию типа сборки после вкуса продукта, идентификатор приложения для варианта сборки "C" будет "<your-applicaion-id>.debug".

Итак, если вы хотите, чтобы он был разным для разных вкусов, вам нужно отделить applicationIdSuffix для разных ароматов и удалить его из debug {} следующим образом:

android {
    defaultConfig {
        applicationId "<your-application-id>"
    }
    productFlavors {
        A {
            applicationIdSuffix ".debug"
        }
        B {
            applicationIdSuffix ".debug"
        }
        C {
            applicationIdSuffix ""
        }
    }
}

Подробнее см. В официальной документации .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...