当前位置: 首页 > 知识库问答 >
问题:

如何将Dart/Flutter编译到Android?

翟弘
2023-03-14

共有1个答案

富涛
2023-03-14

Dart被编译为可执行的本地机器代码(ARM、Intel、...),并与一些本地平台代码(Java、Kotlin、Objective-C/Swift)捆绑在一起,以便与本地平台交互。

另见

是用Android的NDK编译的。Dart代码(包括SDK和您的代码)被提前(AOT)编译到原生ARM库中。这个库包含在一个“runner”Android项目中,整个程序被构建到一个APK中。启动时,该应用程序加载Flutter库。任何呈现、输入或事件处理等都委托给编译后的Flutter和应用程序代码。这类似于许多游戏引擎的工作方式。

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

用LLVM编译。Dart代码(包括SDK和您的代码)被提前(AOT)编译到原生ARM库中。这个库包含在一个“runner”iOS项目中,整个程序被构建到一个。ipa中。启动时,该应用程序加载Flutter库。任何呈现、输入或事件处理等都委托给编译后的Flutter和应用程序代码。这类似于许多游戏引擎的工作方式。

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

 类似资料:
  • 我正在开发一个多平台应用程序,它可以在Android、IOS和web上运行。我为每个平台调用了不同的服务,在其中一个服务中,我使用FileReader()从web版本上传文件,它可以工作,但如果我不评论FileReader(),它就不允许我编译Android版本,输出如下: 我用来为网络选择图像的代码: 有没有FileReader()的替代方法,或者有没有什么方法可以让它在不需要注释web服务的情

  • 请问有一份android环境运行的代码,可以直接转换到DevEco Studio编译实现么 尝试在DevEco Studio打开,但是无法直接预览,是否需要转换成ARKTS语言呢

  • 问题内容: 它可以有效地编译到哪一个? 或类似的东西 那么它会替代(某种内联),还是实际上创建一个匿名类? 问题答案: VM决定如何实现lambda,而不是编译器。 请参阅《 Lambda表达式的翻译》中的部分。 我们没有生成字节码来创建实现lambda表达式的对象(例如,调用内部类的构造函数),而是描述了构造lambda的方法,并将实际构造委托给语言运行时。该配方被编码在invokedynami

  • 我从一个复杂的json中获取空数据,这里是json。当我试图解析它时,我得到了null。请看一看。 我已生成模型类:https://javiercbk.github.io/json_to_dart/ 生成模型类后,创建一个新的类名ModelClass。 另一个类名为APiResponse并编写代码:这个类获取api响应并返回响应:APiResponse。fromJson(jsonDecode(re