我只想知道 Flutter 是直接在 Android 上运行 Dart 代码还是将其转换为 Java/Kotlin 并实际运行?

最佳答案

也许这对你有帮助:

Flutter 如何在 Android 上运行我的代码?

引擎的 C 和 C++ 代码使用 Android 的 NDK 编译。 Dart 代码(SDK 的和您的)都被提前 (AOT) 编译到 native 、ARM 和 x86 库中。这些库包含在一个“runner”Android 项目中,整个项目都内置在一个 APK 中。启动时,应用程序会加载 Flutter 库。任何渲染、输入或事件处理等都委托(delegate)给已编译的 Flutter 和应用程序代码。这类似于许多游戏引擎的工作方式。

Debug模式构建使用虚拟机 (VM) 来运行 Dart 代码(因此他们显示“调试”横幅以提醒人们他们的速度稍慢)以启用有状态热重载。

Flutter 如何在 iOS 上运行我的代码?

引擎的 C 和 C++ 代码使用 LLVM 编译。 Dart 代码(SDK 的和您的)都被提前 (AOT) 编译成原生的 ARM 库。该库包含在“runner”iOS 项目中,整个项目都内置于 .ipa 中。启动时,应用程序会加载 Flutter 库。任何渲染、输入或事件处理等都委托(delegate)给已编译的 Flutter 和应用程序代码。这类似于许多游戏引擎的工作方式。

Debug模式构建使用虚拟机 (VM) 来运行 Dart 代码(因此他们显示“调试”横幅以提醒人们他们的速度稍慢)以启用有状态热重载。

在此处阅读更多信息:https://flutter.dev/docs/resources/faq#run-android

关于flutter - Flutter 是否将 Dart 代码转换为 Java/Kotlin?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58818897/

10-11 19:52
查看更多