Отключите плагин Google Services Gradle для определенного вкуса
Использование Сервисов Google требует использования этого плагина Gradle:
apply plugin: 'com.google.gms.google-services'
Эта тема на форуме Gradle привела меня к выводу, что вы не можете выборочно включать или отключать плагин, то есть это не вариант. Я пробовал ряд решений, предлагаемых более старыми потоками, включающими условные apply plugin
заявление и никто из них не работает сейчас.
Сам плагин настраивается google-services.json
что Google генерирует и помещается в каталог проекта. Я знаю, что вы можете иметь разные конфигурации для каждого аромата, имея несколько google-services.json
файлов, но что мы должны делать для вариантов сборки, которые мы явно не хотим использовать Сервисы Google (например, для таргетинга на устройства, на которых не установлены Сервисы Play)? Пустые файлы или фиктивные файлы JSON не работают, так как плагин откажется принять его.
Поэтому единственное решение, о котором я могу подумать, - это вручную отключить плагин (закомментировать эту строку) каждый раз, когда я хочу протестировать / создать свой вариант. Конечно, должен быть лучший способ контролировать, как работает плагин?
1 ответ
Я наконец получил версию для работы. Протестировано с Gradle 4.6, инструменты сборки 3.0.1, плагин google-services 3.1.1
применить плагин: 'com.google.gms.google-services' android.applicationVariants.all {вариант -> if (variable.name == 'someVariantNameYouDontwantFirebase') { project.tasks.getByName("процесс" + вариант.имя.capitalize() + "GoogleServices").enabled = false } }