【问题标题】:How to use cloud_firestore in flutter for web and android?如何在 web 和 android 的 Flutter 中使用 cloud_firestore?
【发布时间】:2020-01-16 18:45:40
【问题描述】:

我有一个 Flutter 应用程序,它可以按预期在 Android 上运行,但如果我想为 Web 编译它,我会收到一个错误。

它必须与依赖项 cloud_firestore 做一些事情。如果我使用依赖项 firebase,它在网络上可以正常工作,但在 android 上现在不行..

这是我使用 cloud_firestore(为 web 编译)收到的错误消息:

Skipping compiling pay_balance|lib/main_web_entrypoint.dart with ddc because some of its
transitive libraries have sdk dependencies that not supported on this platform:

firebase_core|lib/firebase_core.dart

https://github.com/dart-lang/build/blob/master/docs/faq.md#how-can-i-resolve-skipped-compiling-warnings

有人可以帮我吗?也许对firestore有另一个依赖(我没有找到其他在web和android上工作的)..

编辑:我使用了 web 的 firebase-dart 插件!! -> 仅适用于网络,但不适用于我的 android -> 我需要同时满足两者的需求!!

或者有没有一种方法可以在我导入 cloud_firestore 时同时使用这两个包而不会出现网络编译错误?

【问题讨论】:

  • @Frank van Puffelen 我的问题没有得到回答...我之前使用过依赖项 fiebase -> 然后我只能在 Web 上工作,但不能同时在 Android 上工作正如我在帖子中所说的那样。
  • Firebase for Web 和 Android/iOS 的 Flutter/Dart 插件彼此不兼容。也许 Flutter 构建系统允许条件编译?

标签: flutter google-cloud-firestore flutter-web


【解决方案1】:

如果您想在 Web 和移动设备上使用 Firebase,您必须要有创意。我创建了fb_auth 插件,它在iOS 和Android 上使用Mobile SDK firebase_auth,在Web 上使用firebase 包。这将为您提供一个用于身份验证的插件。

https://pub.dev/packages/fb_auth

我正在研究 firstore 和 storage,但还没有准备好。

我还创建了一篇关于如何使用颤振做到这一点的文章:

https://medium.com/@rody.davis.jr/how-to-build-a-native-cross-platform-project-with-flutter-372b9e4b504f

您必须使用动态导入,以便在编译时它会摇动它不需要的东西并且不会引发错误。

目前这是在同一个项目中正式使用这两个插件的唯一方法。

【讨论】:

【解决方案2】:

编辑:现在添加了 cloud_firestore

现在 Web 支持两个 FutterFire 插件。 FlutterFire plugins supporting web firebase_authfirebase_core

cloud_firestore 现在也支持

【讨论】:

    猜你喜欢
    • 2021-03-08
    • 2018-10-18
    • 2019-03-19
    • 1970-01-01
    • 2019-03-14
    • 1970-01-01
    • 2021-02-16
    • 2019-01-21
    • 2023-01-25
    相关资源
    最近更新 更多