当前位置: 首页 > 知识库问答 >
问题:

针对不同产品口味的google-services.json

徐隐水
2023-03-14

更新:不推荐使用GCM,请使用FCM

我正在按照Google Developers页面中的指南实现新的Google云消息

我已经成功地运行并测试了它。但我现在的问题是,我有不同的产品风格,有不同的applicationID/packageName和不同的Google Cloud Messaging Project ID。google-services.json必须放在/app/google-services.json而不是flavors文件夹中。

有什么方法可以使google-services.json配置针对多种口味不同吗?

共有1个答案

季小云
2023-03-14

你能做到的

步骤1:添加到gradle

// To auto-generate google map api key of google-services.json
implementation 'com.google.android.gms:play-services-maps:17.0.0'

步骤2:在应用程序标记中添加到AndroidManifest.xml

<meta-data
    android:name="com.google.android.geo.API_KEY"
    android:value="@string/google_api_key" />

步骤3:从firebase下载每个风味JSON文件并将其添加

app/src/
    flavor1/google-services.json
    flavor2/google-services.json
/app/src/debug/google-services.json
/app/src/debug/flavor1/google-services.json
/app/google-services.json

如果您想了解这个插件如何处理这些json文件的更多详细信息,请参见:https://github.com/googleSamples/google-services/issues/54#issueComment-165824720

更新信息的博文:https://firebase.googleblog.com/2016/08/Organization-your-firebase-enabled-android-app-builds.html

 类似资料:
  • 问题内容: 我想要 与 ndk库 不同的 字符串 值 。因为我有两个风味演示和现场直播,所以我想为演示风味和实时风味值“你好,我来自演示”,我想“我来自现场” 这是我的java文件代码 } 这是我的cpp文件代码 这是我的build.gradle文件 我已经在演示文件夹以及主文件夹中粘贴了相同的cpp文件,但是可以实现我的任务。任何帮助将不胜感激,这是一些参考链接 https://develope

  • 我正在将我的一个应用程序转换为Gradle,并希望使用新的构建风味功能,以有一个付费和免费的广告为基础的风味。 我希望只有基于广告的版本依赖于admob SDK。 我的生成文件如下所示: 是否有一种方法可以在免费产品版本中配置依赖项,使其拥有自己的libs文件夹,该文件夹与包含两种版本通用库的主libs文件夹合并? 如果这是可能的,我将如何定义这个文件夹?

  • 前言:这不是一个关于如何在一个Android应用中使用构建类型和产品口味的问题。我理解其中涉及的基本概念。这个问题更多的是试图理解在构建类型中应该指定哪个配置,在产品风味中应该指定哪个配置,以及实际上是否有必要进行任何区分。 本周,我学习了更多关于Android应用程序的分级配置。我最初认为自己对构建类型和产品风格有很好的把握,但我对文档越深入,就越意识到这两者之间的区别对我来说根本不清楚。 既然

  • 我正在尝试将我的项目迁移到gradle。我的一个项目有多种产品风格,并且每个项目都必须在其发布版本中使用不同的进行签名。所以这是我到目前为止尝试的: 当我运行时,我得到一个和以下错误消息: 所以我假设。*Gradle脚本的一部分不是放置代码签名配置的正确位置。

  • 当我试图给我的项目添加一种风格时,Gradle就是不想同步,即使我同步了,我也看不到构建变量中的风格。什么会导致这个问题?该项目有几个模块,我需要添加应用程序的味道。我的文件: 我从这里删除了一些信息,比如依赖关系、id等等,只是为了显示一个结构。

  • 我有一个如下结构的android模块: 我在模块的build.gradle文件中定义了两个产品风味,称为flavor1和flavor2,位于文件夹src/main/assets/flavor1/下,而src/main/assets/flavor2是完全不同的动态库,例如:libhelper.so。它们适用于不同的产品风味。 我的意图是在gradle构建过程中,根据产品风格将不同的动态库复制到jni