无法在两个版本的最新版本上使用Firebase编译Flutter应用

时间:2019-04-10 01:58:40

标签: firebase flutter firebase-authentication

我从扑打开始。 我编译了Hello World项目,它成功了。 但是当我输入对firebase_auth的依赖项时,我在编译项目时遇到了麻烦。

我遵循了以下步骤:

  1. 我在pubspec.yaml中插入了最新版本的firebase_auth
dependencies:
  firebase_auth: ^0.8.4+2
  1. 单击Packages得到。成功
  2. 运行“ main.dart”。错误!
Initializing gradle...
Resolving dependencies...
Running Gradle task 'assembleDebug'...
/usr/local/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth-0.8.4+2/android/src/main/java/io/flutter/plugins/firebaseauth/FirebaseAuthPlugin.java:9: error: cannot find symbol
import androidx.annotation.NonNull;
                          ^
  symbol:   class NonNull
  location: package androidx.annotation
/usr/local/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth-0.8.4+2/android/src/main/java/io/flutter/plugins/firebaseauth/FirebaseAuthPlugin.java:10: error: cannot find symbol
import androidx.annotation.Nullable;

...

BUILD FAILED in 16s
*******************************************************************************************
The Gradle failure may have been because of AndroidX incompatibilities in this Flutter app.
See https://flutter.dev/docs/development/packages-and-plugins/androidx-compatibility for more information on the problem and how to fix it.
*******************************************************************************************

我看到的所有将firebase_auth与flutter集成的教程都可以使用,但是在以前的版本中。

这真的是Android的兼容性问题吗?

我搜索了几个小时的错误,但没有找到解决方法。

1 个答案:

答案 0 :(得分:2)

尝试按照本教程操作,在Android Studio中打开您的Android应用,然后将Gradle中的库转换为AndroidX。 firebase_auth的最新版本依赖于AndroidX,并且您不能同时拥有两个旧版支持库和AndroidX。

我遇到了同样的问题,因此可以通过遵循本文档来解决。当您打开Flutter Android项目时,Android Studio的一个顶级菜单下有一个选项只是显示“转换为AndroidX”。

https://developer.android.com/jetpack/androidx/migrate