如何获取或缓存主颤振引擎?

问题描述

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

解决方法

我终于找到了解决方案。我只是覆盖了 FlutterActivity 类的 configureFlutterEngine(FlutterEngine flutterEngine) 方法。没有必要缓存它,因为在 MainActivity 类中很容易得到它,但以防万一有人需要它:

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