语境:
我正在尝试为我的应用设置Google Analytics. (有4个自定义buildTypes和多个productFlavors)
当我选择将applicationID设置为com.my.app.package.name(生成Google-services.Json时使用的包名称)的Build Variant时,它工作正常.但是,我的其他风格有不同的applicationIDs.
我按照offical devguide设置了它.
在Build Variants选项卡(具有不同的applicationID(包名称))中选择任何其他构建变量时,我得到的错误如下:
Error:Execution Failed for task
‘:app:processAllcategorIEsDeBUGfreeGoogleServices’.No matching clIEnt found for package name ‘com.my.app.package.name.deBUG’
错误消息的说明:
在上面的错误消息中的任务名称中,DeBUGfree是我的自定义buildType,而AllcategorIEs是我的productFlavors之一.
我理解错误并知道包名称与生成Json时使用的不同,但这正是我想要解决的问题.
问题:
现在,Google-services.Json驻留在app文件夹中,因此我无法通过将它们放入特定于风味的源集文件夹中来将它们分离出来.
问题:
>我的自定义byildType用于调试后缀.deBUG到applicationID(包名).有没有办法让我可以使用Google-services.Json,它有我的发布applicationID(即没有后缀.deBUG)
>有没有办法在同一个Google-services.Json文件中配置多个产品风格,而不使用单独的文件和任务将所需文件复制到app文件夹.我知道可以使用this post中提到的任务来完成它.有没有更简单的方法来只有一个文件或根据gradle配置选择正确的文件?
>我看到Google-services.Json中的package_name字段的包名为com.my.app.package.name.我可以手动添加多个包名称以适用于所有构建变体吗?如果是的话,怎么做?在文档中找不到任何说明.
解决方法:
在Google-services.Json上查看您的包裹名称,它应与您应用的本地包裹名称相同
例
"clIEnt_info": { "mobilesdk_app_ID": "1:6596814400689:androID:65d6f25f5006145", "androID_clIEnt_info": { "package_name": "com.my.app.package.name" }
在这种情况下,我的本地包名是com.my.app.package.name所以我也用我的本地包名更改了Google-services.Json中的包名
总结以上是内存溢出为你收集整理的android – 找不到包名称的匹配客户端(Google Analytics) – 多个productFlavors和buildTypes全部内容,希望文章能够帮你解决android – 找不到包名称的匹配客户端(Google Analytics) – 多个productFlavors和buildTypes所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)