flutter中如何构建无键发布模式——Flutter调试模式好慢

Tab*_*aba 3 flutter flutter-test flutter-build

每当我尝试使用命令测试我的应用程序时,flutter run它都非常缓慢且缓慢,并且我无法确定我的应用程序在发布模式下的性能如何。然而,为了构建 Android 应用程序,release mode我们需要为应用程序创建一个密钥,它不会显示大部分日志文件打印

所以问题是,有没有办法以发布模式格式运行应用程序,但具有调试功能?

Tab*_*aba 5

简短回答:

\n

3 个不同的构建模式:

\n
    \n
  1. 调试\n:这是我们测试应用程序时最常见的模式。如果您使用的是Android Studio您可以在顶部面板上找到它的按钮(绿色的播放按钮)。

    \n
    flutter run\n
    Run Code Online (Sandbox Code Playgroud)\n
  2. \n
  3. 发布\n:此模式用于在市场上部署应用程序。

    \n

    笔记:此模式需要为 android 发布模式生成的密钥。

    \n
    flutter run --release\n
    Run Code Online (Sandbox Code Playgroud)\n
  4. \n
  5. 轮廓\n:这是您正在寻找的模式。在配置文件模式下,保留了一些调试能力\xe2\x80\x94,足以分析您的应用程序\xe2\x80\x99的性能,并且它还具有与发布模式相同的性能。

    \n
    flutter run --profile\n
    Run Code Online (Sandbox Code Playgroud)\n
  6. \n
\n

长答案:

\n
    \n
  1. 调试:
  2. \n
\n
\n

在调试模式下,应用程序设置为在物理设备、\nemulator 或模拟器上进行调试。

\n

移动应用程序的调试模式意味着:

\n

断言已启用。\n服务扩展已启用。\n编译针对快速开发和运行周期进行了优化(但未针对执行速度、二进制大小或部署进行优化)。\n调试已启用,并且工具支持源代码级调试(例如 DevTools)可以连接到进程。

\n

Web 应用程序的调试模式意味着:

\n

构建未缩小,也未执行树摇动。\n该应用程序使用 dartdevc 编译器进行编译,以便于调试。

\n

默认情况下,flutter run 编译为调试模式。您的 IDE 支持此\n模式。例如,Android Studio 提供了“运行”>“调试\xe2\x80\xa6”菜单选项,以及项目页面上覆盖有小三角形的绿色错误图标。

\n
\n
    \n
  1. 发布:
  2. \n
\n
\n

当您需要最大\n优化和最小占用空间时,请使用发布模式来部署应用程序。对于移动设备,发布模式\n(模拟器或模拟器不支持)意味着:

\n

断言被禁用。\n调试信息被删除。\n调试被禁用。\n编译针对快速启动、快速执行和小包大小进行了优化。\n服务扩展被禁用。

\n

Web 应用程序的发布模式意味着:

\n

构建已缩小,并且已执行树摇动。\n该应用程序使用 dart2js 编译器进行编译,以获得最佳性能。

\n
\n
    \n
  1. 轮廓:
  2. \n
\n
\n

在配置文件模式下,保留了一些调试能力\xe2\x80\x94,足以\n分析您的应用\xe2\x80\x99 的性能。配置文件模式在模拟器和模拟器上被禁用,因为它们的行为不代表真实性能。在移动设备上,配置文件模式与发布\n模式类似,但有以下区别:

\n

某些服务扩展(例如启用性能覆盖的服务扩展)已启用。\n跟踪已启用,并且支持源代码级调试的工具(例如 DevTools)可以连接到该进程。

\n

Web 应用程序的配置文件模式意味着:

\n

构建未缩小,但已执行树摇动。\n该应用程序是使用 dart2js 编译器编译的。

\n
\n

您可以在 flutter 官方网站上找到文档:Flutter\'s build mode

\n