giozh
giozh

Reputation: 10068

Android flavors: Add an external library on a specific flavor

On my project gradle, i have declared two flavors:

android {
compileSdkVersion 27
defaultConfig {
    applicationId "com.mypackage"
    minSdkVersion 14
    targetSdkVersion 27
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}

flavorDimensions "myFlavor"

productFlavors {
    firts{
        dimension "myFlavor"
        applicationId "com.mypackage.first"
    }

    second{
        dimension "myFlavor"
        applicationId "com.mypackage.second"
    }
}
}

dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.0'
implementation 'com.android.support:design:27.1.1'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
implementation 'com.android.support:recyclerview-v7:27.1.1'
}

Now i need to include and use an external jar library only to second flavor. How can i do?

Upvotes: 2

Views: 615

Answers (1)

Sagar
Sagar

Reputation: 24907

Its as Simple as replacing implementation with <flavor-name>Implementation <library>

Lets say you want to include com.android.support:design:27.1.1 only for second flavor. You can achieve it as follows:

dependencies {
    ...
    secondImplementation 'com.android.support:design:27.1.1'
    ...
}

Upvotes: 2

Related Questions