首页 > 解决方案 > Android 的 Instant Run 与 Flutter 的 Hot Reload 和 React Native 的 Hot Reload 的区别?

问题描述

目前,我正在开发 React Native 项目,当我在运行项目后摇晃手机时,它会给我实时更新。因为我也使用过 Flutter,所以它也为我提供了相同的输出。但是,在 Android 中有一个称为 Instant Run 的功能。

我用谷歌搜索了即时运行。并且某些结果不同 Instant Run 不是 Android Studio 的 Hot Reload。

所以,我想知道 Instant Run 和 Hot Reload 在工作和功能上的显着差异是什么?

标签: androidreact-nativeflutterandroid-instant-runhot-reload

解决方案


我无法详细介绍技术细节,但这里有一些实际差异:

  • Flutter Hot Reload 比 Instant Run 快很多
  • Instant Run 有时会失败并导致完全重建,这可能需要几分钟。
  • Flutter Hot Reload 会在您保存文件时自动安排,并且没有延迟。Instant Run 会导致很多延迟,这会让人分心。
  • Flutter Hot Reload 不会丢失任何状态,而在使用 Instant Run 时,经常会发生应用程序被重置的情况
  • Flutter 还允许您在不到一秒的时间内重启应用(重置状态)(在 Android 中可能需要几分钟)
  • Flutter Hot Reload 也可以在应用程序处于后台时工作
  • 在对 Flutter 应用程序的原生 Android 和 iOS shell 进行更改时,Flutter Hot Reload 对您没有帮助。您必须使用 Gradle/XCode 进行完全重建(这也会重置状态)

推荐阅读