【问题标题】:Flutter: Use same app in web ,android and iosFlutter:在 web 、android 和 ios 中使用相同的应用程序
【发布时间】:2020-05-12 01:07:32
【问题描述】:

我如何构建可以为 web 构建的 Flutter 应用,并且在我们现有的 android/ios 应用上使用相同的应用。

我们已经有现有的应用程序,我们正在寻求向 Flutter 发展。我们可以在 Flutter 中构建我们的应用程序,将其插入现有应用程序并在 Web 中使用相同的应用程序吗?

阿比

【问题讨论】:

    标签: flutter flutter-web


    【解决方案1】:

    启用 Flutter Web

    flutter config --enable-web
    

    然后进入现有的 Flutter 项目并运行

    flutter create .
    

    您的项目将被配置为网络。

    禁用网页:

    flutter config --no-enable-web
    

    更多信息here

    【讨论】:

      【解决方案2】:

      您可以使用条件导入:

      import 'some_package_stub.dart'
          if (dart.library.io) 'some_package_io.dart'
          if (dart.library.html) 'some_package_web.dart';
      

      some_package_stub.dart 文件是必需的,以避免在开发和编译时出错。它必须包含一些依赖于运行平台的stub 功能。

      例如,如果您使用来自包some_package 的函数getPlatformDependedData 在Web 或Android 下返回不同的数据,那么您应该在some_package_stub.dart 中声明这些函数的原型:

      String getPlatformDependedData() {
        throw UnimplementedError('This error will not raised!');
      }
      

      然后在代码中你可以使用isWeb 常量来检查代码是否与网络相关:

      if (isWeb) {
        // some web related statements
      }
      

      【讨论】:

        【解决方案3】:

        根据documentation,您需要在终端中运行这些命令:

        1. flutter channel stable
        2. flutter upgrade
        3. flutter config --enable-web
        4. 重新启动您的项目
        5. flutter create .
        6. 完成

        【讨论】:

          【解决方案4】:

          关于这个问题:我可以构建一个可以在浏览器中运行的 Flutter 应用吗,Flutter for web 最近已经推出。你可以在这里找到更多信息:flutter web

          【讨论】:

            猜你喜欢
            • 2023-01-11
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-09-29
            • 1970-01-01
            相关资源
            最近更新 更多