Android 为FCM中的不同口味配置mulitple google-services.Json
我正在尝试在android项目中按照不同的风格实现多个google-service.json文件。 我尝试使用以下代码: 下面是我有两个google-service.json文件的路径-Android 为FCM中的不同口味配置mulitple google-services.Json,android,firebase-cloud-messaging,android-flavors,Android,Firebase Cloud Messaging,Android Flavors,我正在尝试在android项目中按照不同的风格实现多个google-service.json文件。 我尝试使用以下代码: 下面是我有两个google-service.json文件的路径- app/flavourA/google-services.json app/flavourB/google-services.json 应用程序内/build.gradle apply plugin: 'com.android.application' apply plugin: 'com.google.gm
app/flavourA/google-services.json
app/flavourB/google-services.json
应用程序内/build.gradle
apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
android {
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
flavorDimensions"default"
productFlavors {
flavourA {
buildConfigField("String", "flavored_app_name", "\"flavourA\"")
buildConfigField("String", "ApplicationId", "\"com.companyname.flavourA\"")
applicationId 'com.companyname.flavourA'
dimension "default"
testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
versionCode 68
versionName '3.1.7'
}
flavourB{
versionCode 14
buildConfigField("String", "flavored_app_name", "\"flavourB\"")
buildConfigField("String", "ApplicationId", "\"com.companyname.flavourB\"")
applicationId 'com.companyname.flavourB'
dimension "default"
testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
versionName '1.7.0'
}
}
}
def appModuleRootFolder = '.'
def srcDir = 'src'
def googleServicesJson = 'google-services.json'
task switchToDebug(type: Copy) {
def buildType = 'debug'
description = 'Switches to DEBUG google-services.json'
from "${srcDir}/${buildType}"
include "$googleServicesJson"
into "$appModuleRootFolder"
}
task switchToRelease(type: Copy) {
def buildType = 'release'
description = 'Switches to RELEASE google-services.json'
from "${srcDir}/${buildType}/"
include "$googleServicesJson"
into "$appModuleRootFolder"
}
afterEvaluate {
flavourA.dependsOn switchToDebug
flavourB.dependsOn switchToRelease
}
错误:
ERROR: Could not get unknown property 'flavourA' for project ':app' of type org.gradle.api.Project.
你所指的那篇文章是旧的。不久前
Firebase
改变了支持不同风格的实现。现在只有一个由Firebase生成的google services.json
文件,其中包含对所有口味的引用。您必须在Firebase控制台的同一个项目中添加多个应用程序,并下载更新的
google service.json
,然后放入根文件夹。请遵循Firebase提供的最新指南。阅读他们关于如何添加不同变体的说明: