【问题标题】:Incorrect google-services.json is picked by com.google.gms:google-services:4.3.4com.google.gms:google-services:4.3.4 选择了不正确的 google-services.json
【发布时间】:2020-10-02 10:52:38
【问题描述】:

我的 android 应用使用两个 firebase 项目,一个用于开发,另一个用于生产。

我已将每个 firebase 项目的 google-services.json 放在以下目录中。

调试配置: /app/google-services.json

产品配置: /app/src/release/google-services.json

我使用的是com.google.gms:google-services:4.3.2,这个设置运行良好。我在开发时使用了<app_root>/app/google-services.json 的配置,并且在生成签名的发布包时,Android Studio 自动选择了<app_root>/app/src/release/google-services.json 的配置。

我今天将 google-services 版本升级到 4.3.4,在进行签名发布包构建时似乎没有选择 <app_root>/app/src/release/google-services.json。它改用<app_root>/app/google-services.json

这是为什么?这可能是com.google.gms:google-services:4.3.2 中的错误吗?还是不再支持构建类型目录中的覆盖配置?

【问题讨论】:

    标签: android firebase


    【解决方案1】:

    看起来com.google.gms:google-services:4.3.4 更改了文件的优先级,因此<app_root>/app/google-services.json 处的google-services.json 优先于<app_root>/app/src/release/google-services.json,这在4.3.2 版本中是相反的。

    我将<app_root>/app/google-services.json 移动到<app_root>/app/src/debug/google-services.json,这给了我之前的行为。

    【讨论】:

    • 如果文件的优先级发生了变化,那么它更可能是一个错误而不是设计上的变化,因为在 Android 世界中,通常专用目录优先于一般目录。此外,标准文件没有谈到这种设计变更。在官方回购中为此创建了一个问题。关注github.com/google/play-services-plugins/issues/163 获取官方更新。
    【解决方案2】:

    通过将com.google.gms:google-services4.3.3 更改为4.3.4,我对<app_root>/app/src/debug/google-services.json 也有同样的问题。作为一种解决方法,我将<app_root>/app/google-services.json移动<app_root>/app/src/release/google-services.json,它对我有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-30
      • 2021-01-19
      • 2018-09-25
      • 2020-11-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-11
      相关资源
      最近更新 更多