[英]Android Flutter launch custom activity with cached engine
Iam integrating FlutterActivity
to a native Android app.我正在将FlutterActivity
集成到本机 Android 应用程序。 I have CustomFlutterActivity
which inherits from FlutterActivity
, which I want to launch using cached FlutterEngine
.我有继承自CustomFlutterActivity
的FlutterActivity
,我想使用缓存FlutterEngine
启动它。
This is the code from the documentation for how to do this:这是文档中有关如何执行此操作的代码:
startActivity(
FlutterActivity
.withNewEngine()
.build(currentActivity)
);
What I want to achieve is to launch my CustomFlutterActivity
with my cached engine (and not a generic FlutterActivity
as the documentation says)我想要实现的是使用我的缓存引擎启动我的CustomFlutterActivity
(而不是文档所说的通用FlutterActivity
)
In your CustomFlutterActivity
which I suppose is derived from FlutterActivity
you can override getCachedEngineId
and provide the my_engine_id
you have previously cached according to the docs, namely:在我认为从FlutterActivity
CustomFlutterActivity
,您可以覆盖getCachedEngineId
并提供您之前根据文档缓存的my_engine_id
,即:
FlutterEngineCache
.getInstance()
.put("my_engine_id", flutterEngine);
Thus:因此:
class CustomFlutterActivity: FlutterActivity() {
override fun getCachedEngineId(): String? {
return "my_engine_id"
}
}
You can override provideFlutterEngine
and return FlutterEngine
from the cache.您可以覆盖provideFlutterEngine
并从缓存中返回FlutterEngine
。
class CustomFlutterActivity : FlutterActivity() {
override fun provideFlutterEngine(context: Context): FlutterEngine? {
return FlutterEngineCache.getInstance().get("flutter_engine")
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.