我正试图从Flutter网站上消化以下信息。
Flutter如何在Android上运行我的代码
该引擎的C和C++代码是用Android的NDK编译的。飞镖代码(包括SDK和您的(被提前(AOT(编译为本机库、ARM库和x86库。这些库包含在"runner"安卓项目,整个项目都构建在一个APK中。启动后,该应用程序加载Flutter库。任何渲染,将输入或事件处理等委派给已编译的Flutter和应用程序代码。这与许多游戏引擎的方式类似工作
每个Flutter应用程序(更确切地说,每个使用Flutter创建的Android应用程序(是否都附带了Flutter引擎?
是的,它包含在每个应用程序中。安卓/iOS上的应用程序之间没有代码共享。此外,每个应用程序都可能有不同版本的引擎(取决于编译时间(
请注意,随着即将推出的Flutter 1.0,开销(在Android上(不到5M,这还不错。我相信iOS上的开销是类似的。
libflatter.so的大小为27.1MB。