Сборки Android Studio не заботятся о моих вкусах Gradle? - PullRequest
1 голос
/ 29 марта 2019

Я пытаюсь использовать разные вкусы для создания разных APK с разными качествами активов. Проблема заключается в том, что после выбора варианта сборки, он все еще запускает все варианты, а не только корректный.

Так что мой build.gradle выглядит так.

task initialize{
     doLast {            
         configureObbFile.execute()
         setupScreenSupport.execute()
     }
} 

android {

  compileSdkVersion 28
  defaultConfig {
      println("Flavor: default")
      applicationId com.test.package
      minSdkVersion 19
      targetSdkVersion 28
      versionName "1.0.0"
  }

  flavorDimensions "AssetSize"
  productFlavors {
      tiny {
          println("Flavor: tiny assests")
          pak_name_suffix = "tiny"
          initialize.execute()
      }
      small {
          println("Flavor: small assests")
          pak_name_suffix = "small"
          initialize.execute()
      }
      normal {
          println("Flavor: normal assests")
          pak_name_suffix = "normal"
          initialize.execute()
      }
      tablet {
          println("Flavor: tablet assests")
          pak_name_suffix = "tablet"
          initialize.execute()
      }
      hightable {
          println("Flavor: hightable assests")
          pak_name_suffix = "hightable"
          initialize.execute()
      }
  }
  [...]
}

Я получаю вывод сборки примерно так

Executing tasks: [:app:assembleHightableDebug]

> Task :app:configureObbFile

> Task :app:setupScreenSupport
Screens pak_name_suffix = "tiny"

> Task :app:initialize
> Task :app:initialize
> Task :app:initialize
> Task :app:initialize
> Task :app:initialize

> Configure project :app
Flavor: default
Flavor: tiny assests
Flavor: small assests
Flavor: normal assests
Flavor: tablet assests
Flavor: hightable assests

Как видите, начинается с app: assemblyHightableDebug , но затем выполняет все варианты, начиная сверху вниз. Я бы хотел, чтобы он делал только раздел HighTable (и по умолчанию). В чем дело? Что я делаю неправильно? Странно то, что он запускает configureObbFile и setupScreenSupport только один раз, с 'крошечным' ароматом.

1 Ответ

0 голосов
/ 29 марта 2019

Вы должны удалить каждую initialize.execute() строку из ваших ароматов. И посмотрите на этот , чтобы узнать, как правильно отклонить ваше приложение с ароматами.

...