语境:
我正在尝试为我的应用设置 Google Analytics。(有 4 个自定义buildTypes和多个productFlavors)
buildTypes
productFlavors
当我选择设置为(生成时使用的包名称)时Build Variant,它工作正常。但是,我的其他口味有不同的 applicationId。applicationId``com.my.app.package.name``google-services.json
Build Variant
applicationId``com.my.app.package.name``google-services.json
我按照官方开发指南进行设置。
错误时,我会收到任何另一个构建变量Build Variants Tab(具有不同的applicationId(包名称)如下:
Build Variants Tab
applicationId
错误:任务“:app:processAllcategoriesDebugfreeGoogleServices”执行失败。 找不到与包名称“com.my.app.package.name.debug”匹配的客户端
错误:任务“:app:processAllcategoriesDebugfreeGoogleServices”执行失败。
找不到与包名称“com.my.app.package.name.debug”匹配的客户端
错误信息说明:
上面错误消息中的任务名称Debugfree是我的自定义buildType,Allcategories是我的productFlavors.
Debugfree
buildType
Allcategories
我理解错误并且知道包名称与我在生成 json 时使用的名称不同,但这就是我想要解决的问题。
问题:
现在,它们google-services.json位于app文件夹中,因此我无法通过将它们放入风味特定的源集文件夹中来为每种产品风味分离它们。
google-services.json
app
byildType
.debug``applicationId``google-services.json``applicationId``.debug
task
package_name
com.my.app.package.name
发现这个:
google-services.json 文件通常放在 app/ 目录中, 但从 2.0.0-alpha3 版本开始,为构建类型添加了插件支持 ,这将使以下目录结构有效: app/src/ main/google-services.json dogfood/google-services.json mytype1/google-services.json ...
google-services.json 文件通常放在 app/ 目录中, 但从 2.0.0-alpha3 版本开始,为构建类型添加了插件支持 ,这将使以下目录结构有效:
app/src/ main/google-services.json dogfood/google-services.json mytype1/google-services.json ...
资源
来源 2