Ароматизаторы для Android: Используйте файлы ресурсов ароматизатора в других ароматизаторах

#android #android-gradle-plugin #build.gradle

Вопрос:

Предположим, у меня есть приложение для Android, которое я хочу распространить среди нескольких клиентов, которое поставляется в разных версиях для каждого клиента (prod, dev, staging). Теперь у каждого клиента есть свой собственный бренд, название приложения, активы и так далее. Однако каждая версия для каждого клиента должна иметь другую версию google.services.json (для того, чтобы отделять FCM на каждом этапе).

В настоящее время я должен предоставить активы для каждого клиента в каждой подпапке, как это:

 - customerA/
   -res/
   -google.services.json
- customerADev/
   -res/
   -google.services.json
- customerAStaging/
   -res/
   -google.services.json
- customerB/
   -res/
   -google.services.json
- customerBDev/
   -res/
   -google.services.json
- customerBStaging/
   -res
   -google.services.json
 

Для каждой из этих вложенных папок у меня есть соответствующая ProductFlavor запись в моем build.gradle файле:

 flavorDimensions "default"

productFlavors {
    customerA {
        dimension "default"
        applicationId "com.app.customerA"       
    }

    customerADev {
        dimension "default"
        applicationId "com.app.customerA.dev"       
    }

    customerAStaging {
        dimension "default"
        applicationId "com.app.customerA.staging"       
    }

    customerB {
        dimension "default"
        applicationId "com.app.customerB"       
    }

    customerBDev {
        dimension "default"
        applicationId "com.app.customerB.dev"       
    }

    customerBStaging {
        dimension "default"
        applicationId "com.app.customerB.staging"       
    }
}
 

Теперь мой вопрос в том, как мне создать конфигурацию, в которой я смогу использовать файлы, указанные в разделе customerA/res для продуктов, customerADev и customerAStaging при этом все еще использовать их соответствующие google.services.json файлы?