Ответ 1
Я использую это обходное решение для решения аналогичной проблемы со сборкой.
Конкретные файлы google-service.json хранятся в папке /app/src/ {flavour-name}/google-service.json. Чтобы скопировать это в каталог /app, в файл /app/build.gradle можно добавить следующий код:
gradle.taskGraph.beforeTask { Task task ->
if(task.name ==~ /process.*GoogleServices/) {
android.applicationVariants.all { variant ->
if(task.name ==~ /(?i)process${variant.name}GoogleServices/){
copy {
from "/src/${variant.flavorName}"
into '.'
include 'google-services.json'
}
}
}
}
}
В отсутствие вкусов (как я понимаю ваш вопрос) следующий фрагмент кода /app/build.gradle выполнил эту работу в проекте тестирования студии Android:
gradle.taskGraph.beforeTask { Task task ->
if(task.name ==~ /process.*GoogleServices/) {
android.applicationVariants.all { variant ->
if(task.name ==~ /(?i)process${variant.name}GoogleServices/){
copy {
from '.'
into '.'
rename { String fileName ->
fileName.replace("google-services-${variant.name}.json", 'google-services.json')
}
include "google-services-${variant.name}.json"
}
}
}
}
}
Фрагмент ожидает от google-services-debug.json и google-services-release.json в вашем /app каталоге и копирует его и переименовывает его в google-services.json.
Надеюсь, что это поможет.