Gradle Build only a flavour

后端 未结 4 1945
迷失自我
迷失自我 2020-12-02 06:47

Could someone tell me if it\'s possible to build only one of my different flavors through the command-line?

At the moment I haven\'t seen the way to execute, for ex

相关标签:
4条回答
  • 2020-12-02 07:07

    To add to the above answers, if you want to build an Android Bundle (AAB) then you can use this

    # build flavor 'flavorName' only
    ./gradlew bundleFlavorName
    
    0 讨论(0)
  • 2020-12-02 07:09

    If your productFlavor is chocolate you can do

    ./gradlew assembleChocolateRelease
    

    or

    ./gradlew assembleChocolateDebug
    
    0 讨论(0)
  • 2020-12-02 07:12

    While there is no flavor-specific version of the build task, there are flavor-specific versions of the assemble and install tasks. assemble will create the APK; install will install it on devices/emulators.

    For example, in this sample project, I define two product flavors (chocolate and vanilla) and three total build types (debug, release, and mezzanine).

    Running gradle tasks shows, among others:

    Build tasks
    -----------
    assemble - Assembles all variants of all applications and secondary packages.
    assembleChocolate - Assembles all builds for flavor Chocolate
    assembleChocolateDebug - Assembles the Debug build for flavor Chocolate
    assembleChocolateDebugTest - Assembles the Test build for the ChocolateDebug build
    assembleChocolateMezzanine - Assembles the Mezzanine build for flavor Chocolate
    assembleChocolateRelease - Assembles the Release build for flavor Chocolate
    assembleDebug - Assembles all Debug builds
    assembleMezzanine - Assembles all Mezzanine builds
    assembleRelease - Assembles all Release builds
    assembleTest - Assembles all the Test applications
    assembleVanilla - Assembles all builds for flavor Vanilla
    assembleVanillaDebug - Assembles the Debug build for flavor Vanilla
    assembleVanillaDebugTest - Assembles the Test build for the VanillaDebug build
    assembleVanillaMezzanine - Assembles the Mezzanine build for flavor Vanilla
    assembleVanillaRelease - Assembles the Release build for flavor Vanilla
    
    Install tasks
    -------------
    installChocolateDebug - Installs the Debug build for flavor Chocolate
    installChocolateDebugTest - Installs the Test build for the ChocolateDebug build
    installChocolateMezzanine - Installs the Mezzanine build for flavor Chocolate
    installChocolateRelease - Installs the Release build for flavor Chocolate
    installVanillaDebug - Installs the Debug build for flavor Vanilla
    installVanillaDebugTest - Installs the Test build for the VanillaDebug build
    installVanillaMezzanine - Installs the Mezzanine build for flavor Vanilla
    installVanillaRelease - Installs the Release build for flavor Vanilla
    uninstallAll - Uninstall all applications.
    uninstallChocolateDebug - Uninstalls the Debug build for flavor Chocolate
    uninstallChocolateDebugTest - Uninstalls the Test build for the ChocolateDebug build
    uninstallChocolateMezzanine - Uninstalls the Mezzanine build for flavor Chocolate
    uninstallChocolateRelease - Uninstalls the Release build for flavor Chocolate
    uninstallVanillaDebug - Uninstalls the Debug build for flavor Vanilla
    uninstallVanillaDebugTest - Uninstalls the Test build for the VanillaDebug build
    uninstallVanillaMezzanine - Uninstalls the Mezzanine build for flavor Vanilla
    uninstallVanillaRelease - Uninstalls the Release build for flavor Vanilla
    
    0 讨论(0)
  • 2020-12-02 07:19

    I would simplify the answer given by @CommonsWare because going through the answer i was litte confused.

    Consider these are the product flavours

    • Dev
    • Preprod
    • Prod

    Run

    gradlew task

    This will list out all Product flavours along with there build types

    assemble - Assembles all variants of all applications and secondary packages.
    assembleAndroidTest - Assembles all the Test applications.
    assembleDebug - Assembles all Debug builds.
    assembleDEV - Assembles all DEV builds.
    assemblePREPROD - Assembles all PREPROD builds.
    assemblePROD - Assembles all PROD builds.
    assembleRelease - Assembles all Release builds.
    

    From this you can easily choose the flavours and will generate a build based on that

    gradlew assemblePREPROD

    0 讨论(0)
提交回复
热议问题