如果每种风味都有自己的 applicationID,并且您希望 Google Analytics 使用不同的跟踪 ID,那么您需要为每种风味生成 google-services.json。
请注意,由于 google-services.json 必须放在 app 文件夹下,因此每次更改风味时都需要手动将风味的 google-services.json 复制到 app 文件夹中。
这是我的方法:
假设我们有两种口味,开发和生产。然后将用于开发的 google-services.json 放在 src/development/google-services 文件夹中。并用于 src/production/google-services 文件夹中的生产。
然后我们需要为那些 google-service.json 文件配置复制任务。将此脚本放在 app 文件夹下的 build.gradle 中。对我来说,我把这个脚本放在android {...}
.
android {
...
}
task switchToDevelopment(type: Copy) {
description = 'Switches to DEVELOPMENT google-services.json'
from "src/development/google-services"
include "google-services.json"
into "."
}
task switchToProduction(type: Copy) {
description = 'Switches to PRODUCTION google-services.json'
from "src/production/google-services"
include "google-services.json"
into "."
}
afterEvaluate {
processDevelopmentDebugGoogleServices.dependsOn switchToDevelopment
processDevelopmentReleaseGoogleServices.dependsOn switchToDevelopment
processProductionDebugGoogleServices.dependsOn switchToProduction
processProductionReleaseGoogleServices.dependsOn switchToProduction
}
每当您更改风味时,都会执行此脚本。它会在执行之前将风味的正确 google-services.json 复制到 app 文件夹process[FlavorBuildtypes]GoogleServices
。希望能帮助到你!:)