上下文:
我正在尝试为我的应用程序设置Google Analytics。(有4个自定义buildTypes
和多个productFlavors
)
当我选择将applicationId
设置为com.my.app.package.name
(生成google-services.json
时使用的包名)的Build Variant
时,它工作得很好。但是,我的其他口味有不同的applicationIds。
我跟随offical devguide来设置它。
在Build Variants Tab
(具有不同的applicationId
(包名)如下所示)中选择任何其他构建变体时,出现错误:
错误:任务':app:processAllcategoriesDebugfreeGoogleServices'.执行失败
找不到包名为'com.my.app.package.name.debug'的匹配客户端
错误消息的解释:
在上面错误消息中的任务名称中,Debugfree
是我的自定义buildType
,Allcategories
是我的productFlavors
之一。
我理解这个错误,并且知道包名称与生成json时使用的名称不同,但这正是我试图解决的问题。
问题:
现在,google-services.json
驻留在app
文件夹中,因此我不能通过将它们放在特定于产品风格的源集文件夹中来为每个产品风格区分它们。
问题:
byildType
将.debug
作为后缀添加到applicationId
(包名)。有没有一种方法可以让它与具有我的release applicationId
的google-services.json
一起工作(即没有后缀.debug
)google-services.json
文件中配置多种产品风格,而不需要使用单独的文件和任务将所需的文件复制到app
文件夹。我知道这可以使用this post中提到的task
来完成。有没有一种更简单的方法是只有一个文件,或者根据gradle configuration?google-services.json
中的package_name
字段,它的包名是com.my.app.package.name
。我是否可以手动添加多个包名称,以适用于所有构建变体?如果是,该怎么做呢?在documentations.中找不到任何说明
https://stackoverflow.com/questions/34990479
复制相似问题