【发布时间】:2020-12-18 17:39:53
【问题描述】:
首先我认为 libflutter.so 来自颤振引擎。 但是我自己编译的时候好像不行。
由于 Flutter 是一个开源项目,可能有办法编译我自己的 libflutter.so。有什么办法可以编译我自己的 libflutter.so 吗?
【问题讨论】:
-
@underscore_d 但首先我应该弄清楚 SO 来自哪里。我不确定要编译哪个项目。
首先我认为 libflutter.so 来自颤振引擎。 但是我自己编译的时候好像不行。
由于 Flutter 是一个开源项目,可能有办法编译我自己的 libflutter.so。有什么办法可以编译我自己的 libflutter.so 吗?
【问题讨论】:
我个人没有尝试过构建 Android 嵌入器,但显然 libflutter.so 是构建引擎的 //shell/platform/android:flutter_shell_native 目标的输出。
https://github.com/flutter/engine/blob/flutter-2.5-candidate.8/shell/platform/android/BUILD.gn#L41
GN文件中shared_library和output_name = "flutter"的组合表示libflutter.so是构建的结果。这是依赖关系图:android -> flutter_jar_zip -> android_jar -> flutter_shell_native。
【讨论】: