我的构建遇到了这个奇怪的问题:我有一个带有某个应用程序ID的构建风格,我正在定义匹配它的正确软件包,我的文件夹层次结构如下所示:
+ src
++ flavor1
+++ google-services.json
++ flavor2
+++ google-services.json
google-services.json中的引用也有正确的包名,而且我仍然会收到“找不到包名称的匹配客户端”这一错误,仅适用于flavor2包,flavor1工作正常。
我已经坚持了一天以上,尝试了从清洁/重建,重新创建层次结构,清除缓存,没有任何工作。知道出了什么问题或者还有什么可以尝试吗?
答案 0 :(得分:0)
Google在播放服务插件的2.0版本中包含了对flavor的支持。从此版本gradle plugin com.google.gms:google-services:2.0.0-alpha3
你可以这样做
app/src/
flavor1/google-services.json
flavor2/google-services.json
插件版本3.0.0将在这些位置搜索json文件(考虑到你有flavor
flavor1和构建类型debug
):
/app/src/flavor1/google-services.json
/app/src/flavor1/debug/google-services.json
/app/src/debug/google-services.json
/app/src/debug/flavor1/google-services.json
/app/google-services.json
即使使用flavorDimensions,这对我也有用。我有免费的&在一个维度支付和Mock&在另一个方面产生刺激。我还有3个buildTypes:debug,release和staging。这就是我在FreeProd风格项目中的表现:
google-services.json文件的数量取决于您项目的特征,但每个Google项目至少需要一个json文件。
如果你想了解这个插件对这些json文件做什么的更多细节,这里是: https://github.com/googlesamples/google-services/issues/54#issuecomment-165824720
官方文档的链接: https://developers.google.com/android/guides/google-services-plugin
然后点击此处查看此插件的最新版本:https://bintray.com/android/android-tools/com.google.gms.google-services/view