使用Firebase时颤振中的摇篮问题

时间:2018-10-11 08:54:25

标签: android firebase gradle android-gradle flutter

在我的flutter应用程序中,我正在将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

2 个答案:

答案 0 :(得分: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

答案 1 :(得分: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的演练会更完整。

相关问题