Gio*_*lli 0 android-studio flutter flutter-web
有人可以向我解释一下热重载和 hor 重新启动,以及何时我不必这样做(例如需要执行重建的代码更改)以及何时可以。在 Flutter web 和 mobile 中调试时,如果我不确定我所做的更改是否影响了结果,我会关闭所有并重建项目......对这两种“快速构建”模式的一些见解“会让我对我在调试过程中点击的按钮更有信心;)
IDE:Android Studio 3.5.1
这是来自 Flutter for Android Studio 和 IntelliJ 的官方文档。
热重载与热重启
热重载的工作原理是将更新的源代码文件注入正在运行的 Dart VM(虚拟机)。这不仅包括添加新类,还包括向现有类添加方法和字段,以及更改现有功能。但是,一些类型的代码更改不能热重载:
全局变量初始值设定项
静态字段初始值设定项
应用程序的 main() 方法
对于这些更改,您可以完全重新启动应用程序,而无需结束调试会话。
来自:https : //flutter.dev/docs/development/tools/android-studio#hot-reload-vs-hot-restart
这是另一种解释。
热重载:
热重载功能快速编译我们文件中新添加的代码,并将代码发送到 Dart 虚拟机。完成更新 Code Dart 虚拟机后,使用小部件更新应用程序 UI。热重载比热重启花费的时间更少。热重载也有一个缺点,如果您在应用程序中使用状态,那么热重载会保留状态,因此它们不会在热重载时将我们的设置更新为默认值。
热重启:
热重启与热重载有很大不同。在热重启中,它会破坏保留状态值并将它们设置为默认值。因此,如果您在应用程序中使用 States 值,那么在每次热重启后,开发人员都会获得完全编译的应用程序,并且所有状态都将设置为其默认值。应用程序小部件树是用新的类型代码完全重建的。热重启比热重载花费的时间长得多。
我的解释来自:https : //flutter-examples.com/difference-between-hot-reload-and-hot-restart-in-flutter-dart/
| 归档时间: |
|
| 查看次数: |
3055 次 |
| 最近记录: |