Firebase for Flutter 登录构建失败
Posted
技术标签:
【中文标题】Firebase for Flutter 登录构建失败【英文标题】:Firebase for Flutter sign-in build failure 【发布时间】:2017-11-20 23:42:49 【问题描述】:我一直在成功学习 Firebase for Flutter 教程,直到我达到“设置 Firebase 集成”为止。当我在手机上重新启动应用程序时,构建失败并出现以下异常:
注意: /Users/williamdevore/.pub-cache/hosted/pub.dartlang.org/firebase_storage-0.0.2/android/src/main/java/io/flutter/plugins/firebase/storage/FirebaseStoragePlugin.java 使用未经检查或不安全的操作。注意:重新编译 -Xlint:详细信息未选中。 /Users/williamdevore/.pub-cache/hosted/pub.dartlang.org/google_sign_in-0.0.6/android/src/main/java/io/flutter/plugins/googlesignin/GoogleSignInPlugin.java:30: 错误:找不到符号导入 io.flutter.app.FlutterFragmentActivity; ^ 符号:类 FlutterFragmentActivity 位置:包 io.flutter.app /Users/williamdevore/.pub-cache/hosted/pub.dartlang.org/google_sign_in-0.0.6/android/src/main/java/io/flutter/plugins/googlesignin/GoogleSignInPlugin.java:98: 错误:找不到符号 + FlutterFragmentActivity.class.getName()); ^ 符号:类 FlutterFragmentActivity 位置:类 GoogleSignInPlugin 2 错误
FAILURE:构建失败并出现异常。
Flutter 医生说 Android 一切正常。我有最新的“一切”。我能够设置 google-services json 文件并毫无问题地使用 Firebase 控制台。
我完全按照说明修改了 build.gradle 文件——两次!
在特定于 Android 的 Flutter 教程之外,我还应该做一些其他的步骤吗?也许是 Brew 或 cocoapods?
【问题讨论】:
【参考方案1】:您的 Flutter 版本似乎与您使用的 Google 登录插件版本不匹配。目前插件没有声明它们需要哪些 Flutter 版本(但将来可能会改变)。
运行flutter update
是否能让您摆脱此错误?如果没有,请尝试运行 flutter doctor
并查看您的 Flutter SDK 的年龄。您希望它包含提交 b4ba972bf394a2269824e1eadaa1627bbc872d4b,因此它最多应该是几天前的。
您应该在MainActivity.java
中出现的两个位置将FlutterActivity
替换为FlutterFragmentActivity
。 (在下一次 Google 登录插件更新中不需要这样做;请参阅 issue 10690。)
【讨论】:
谢谢科林。运行flutter upgrade
解决了这个问题,但现在应用程序一直停止,没有错误消息。我正在尝试任何类型的日志文件,但我找到的唯一一个是颤振构建过程。您会碰巧知道要搜索的任何日志文件吗?
您可能希望在回复中将flutter update
更改为flutter upgrade
。这让我愣了一秒。
不要尝试在现有项目上升级颤振。如果你是颤振新手,你肯定会后悔以上是关于Firebase for Flutter 登录构建失败的主要内容,如果未能解决你的问题,请参考以下文章
有没有办法确定用户是通过自定义 Firebase 帐户还是通过 Flutter 中的 Google 帐户登录的?
Flutter - 尝试构建未来的上下文以检查用户是不是已登录,但我的构建方法有错误
Flutter Login with Facebook 返回构建错误