如何获取或缓存主要的颤动引擎?

How to get or cache the main flutter engine?

我的目标是即使 phone 被锁定也能显示一个屏幕所以我想在 android 本机代码中启动一个新的 FlutterActivity 但我不想创建一个新的 flutter 引擎。是否可以访问应用启动时创建的主 flutter 引擎,或者在应用启动时手动创建主引擎并缓存它?

我终于找到了解决办法。我只是重写了 FlutterActivity class 的 configureFlutterEngine(FlutterEngine flutterEngine) 方法。不需要缓存,因为在MainActivity中很容易获取class,但万一有人需要:

FlutterEngineCache
  .getInstance ()
  .put("engine_id", flutterEngine);