【问题标题】:Gradle issue in flutter when using firebase使用firebase时颤动的Gradle问题
【发布时间】:2019-03-16 07:10:58
【问题描述】:

在我的颤振应用程序中,我将 firebase_auth 用于 google_sign_in,它工作正常。但是当我将 cloud_firestore: 添加到 pubspec.yaml 然后获取依赖项然后重新启动我的应用程序时,它会向我显示如下错误:

FAILURE: Build failed with an exception.

* What went wrong:
The library com.google.android.gms:play-services-base is being requested by various other libraries at [[15.0.1,15.0.1]], but resolves to 16.0.1. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

* Get more help at https://help.gradle.org

BUILD FAILED in 3s
Finished with error: Gradle build failed: 1

【问题讨论】:

标签: android firebase gradle android-gradle-plugin flutter


【解决方案1】:

这个link 为我解决了这个问题。

首先我将 pubspec.yaml 中的依赖项设置为

dependencies:
  flutter:
    sdk: flutter
  cloud_firestore: ^0.8.2 

并在我的 IDE 终端中运行 flutter packages get

我还必须更改最低目标 SDK 版本:

  1. 打开android/app/build.gradle,然后找到上面写着的那一行 minSdkVersion 16
  2. 将该行更改为minSdkVersion 21
  3. 保存文件。

另外,我必须打开android/app/build.gradle,然后将以下行添加到文件的最后一行: apply plugin: 'com.google.gms.google-services'

接下来,我必须打开android/build.gradle,然后在 buildscript 标签内,添加一个新的依赖项:

buildscript {
   repositories {
       // ...
   }

   dependencies {
       // ...
       classpath 'com.google.gms:google-services:3.2.1'   // new
   }
}

在此之后,我的应用程序终于在 android 模拟器上运行了。

如果您遇到困难,link 有更完整的演练。

【讨论】:

    【解决方案2】:

    我在我的 android/build.gradle 文件中使用了这个依赖项

    classpath 'com.android.tools.build:gradle:3.1.2'
    classpath 'com.google.gms:google-services:3.2.1'  
    

    并在 pubspec.yaml 中将此版本用于 firebase 和 google

    firebase_auth: 0.5.11
    google_sign_in: 3.0.4
    cloud_firestore: 0.7.3  
    

    它运行良好,因为在这些版本中,gradle 工具已更新为匹配 Android Studio 3.1.2。

    其他 firebase 工作版本:

    firebase_admob: 0.5.5
    firebase_analytic: 1.0.1
    firebase_core: 0.2.4 
    firebase_database: 1.0.1 
    firebase_dynamic_links: 0.02
    firebase_messaging: 1.0.2
    firebase_performance: 0.0.3
    firebase_remote_config: 0.0.4
    firebase_storage: 0.3.7
    

    【讨论】:

    • 如果 cloud_firestore 版本高于 0.7.3 ios Build ok 但 Android Build 失败,则不起作用。 stackoverflow.com/questions/53064229/…
    • @LiveRock,我知道这就是我提供这些工作版本的原因。此版本有效,因为 gradle 工具已在此版本中更新。参考参考changelog
    • 我知道您提供的组合有效。但是由于错误修复等,我们需要继续使用更高版本的插件。这将是一个更持久的解决方案。有什么建议吗?
    • 所有这些插件仍处于测试阶段,所以等待初始版本是我能给出的唯一建议!
    猜你喜欢
    • 2022-11-11
    • 1970-01-01
    • 2021-06-08
    • 2021-12-16
    • 2019-02-18
    • 2020-08-03
    • 1970-01-01
    • 2021-05-16
    • 2020-06-19
    相关资源
    最近更新 更多