【发布时间】:2020-03-17 22:27:23
【问题描述】:
我正在开发一个带有一些原生 kotlin 代码的 Flutter 应用程序。通过 MethodChannel 从 Flutter 调用原生方法很简单,反之亦然(从 MainActivity)。
但是,我还想要一种方法来触发从本地广播接收器触发的 Flutter 代码,而我没有原始的 MethodChannel。问题是,我不确定如何使用正确的参数创建 FlutterEngine 以访问相同的 MethodChannel。
有没有办法构造相同的 FlutterEngine 来回调 Flutter 代码?我想做什么:
var flutterEngine = FlutterEngine(XXX)
var flutterChannel = MethodChannel(flutterEngine.dartExecutor.binaryMessenger, FLUTTER_CHANNEL)
flutterChannel.invokeMethod(...)
我不确定 XXX 应该在这里获得与 MainActivity 中相同的频道。如果我需要从 MainActivity 传递一些信息,我可以使用意图将其传递给我的广播接收器,但不清楚需要什么。
【问题讨论】: