在我的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
答案 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版本:
android/app/build.gradle
,然后找到显示以下内容的行
minSdkVersion 16
。 minSdkVersion 21
。此外,我必须打开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的演练会更完整。