Switch GCM Client по разработке и производству

Просто реализуйте новый GCM. Для официального документа

Скопируйте файл google-services.json, который вы только что загрузили в приложение/или мобильную/папку вашего проекта Android Studio.

Кто-нибудь знает, как настроить gradle, чтобы переключать разработку и производство на использование разных google-services.json?

Ответ 1

Я только что ответил на аналогичный вопрос здесь для разных productFlavors.

В вашем случае это debug/production. Я не знаю, почему вам нужно переключаться между производством и отладкой, но я думаю, что вы можете сделать то же самое, что я предложил для ароматов.

Создайте две дополнительные папки src/release и src/debug, в каждой из папок вы поместите соответствующий google-services.json, поэтому у вас будут: src/release/google-services.json и src/debug/google-services.json

Теперь в gradle добавьте это:

android {

// set build config here to get the right gcm configuration.
//def myBuildConfig = "release"
def myBuildConfig = "debug"

// this will copy the right google-services.json file to app/ directory.
if (myBuildConfig.equals("release")) {
    println "--> release copy!"
    copy {
        from 'src/release/'
        include '*.json'
        into '.'
    }
} else {
    println "--> debug copy!"
    copy {
        from 'src/debug/'
        include '*.json'
        into '.'
    }
}

// other stuff
}

Ответ 2

Исходя из моего тестового переключения типа сборки или разновидности, я отметил, что мы должны различать их следующим образом:

For Debugging:
src/flavorDebug/google-services.json
src/flavor/debug/google-services.json
src/debug/flavor/google-services.json
If all flavors use only one firebase project with different app ids:
src/debug/google-services.json

For Releasing:
src/flavorRelease/google-services.json
src/flavor/release/google-services.json
src/release/flavor/google-services.json
If all flavors use only one firebase project with different app ids:
src/release/google-services.json

Without flavor should be as the following:
src/debug/google-services.json
src/release/google-services.json

With flavor but not separate build type:
src/flavor/google-services.json

For overall flavors and build types:
src/google-services.json

Note: flavor is referred to your flavor name.