I found a solution for this:
Step1: Declare boolean variablein gradle at the root level.
like: def someDependencyEnabled = true //This could be dynamically set.
Step 2: Using this variable boolean, we can apply the check as:
if(someDependencyEnabled){
}
else
{
}
Step 3: Define different source settings for different situations:
android.sourceSets {
main {
java.srcDirs = ['src/main/java', someDependencyEnabled ? 'src/dependency_enabled_src' : 'src/dependency_disabled_src']
}
}
where:
'src / main / java' : this is a generic src file that contains generic code.
'src/dependency_enabled_src': , , . 'src/main/java'.
'src/dependency_disabled_src': , , .
, (dependency_enabled dependency_disabled src) dependency_enabled_src dependency_disabled_src.