Invoke task from other task and passing some arguments?

Invoking task from another task is deprecated. Use task dependsOn or mustRunAfter or finalizedBy methods, instead.

For example your task copyFlavor1 can be written as follows.

task copyFlavor1(dependsOn: 'copyFlavorGoogleServicesJson')

To pass parameter is achieved by passing it from property by command parameter

gradle copyFlavor1 -PflavorName1=someValue
ext {
    flavor1 = project.hasProperty('flavorName1') ? project.property('flavorName1') : 'defaultName'
}

(I’m sorry for not having knowledge on com.android.application plugin.)