Flutter的invokeMethod上有没有异步等待C++数据的解决方案?

目前,这是我使用 Flutter 从 C++ 中读取的方式:

final Uint8List result = await platform.invokeMethod(Common.MESSAGE_METHOD, {"message": buffer});

Kotlin 是这样处理的:

    MethodChannel(flutterEngine.dartExecutor.binaryMessenger, CHANNEL).setMethodCallHandler { call, result ->
        if (call.method == MESSAGE_METHOD) {
            val message: ByteArray? = call.argument<ByteArray>("message")
            //... //response = Read something FROM C++
            result.success(response)

由于这发生在主线程中,如果我花太多时间来回答,我会使 Flutter 的 UI 变慢。

是否有以异步方式获取 C++ 数据的解决方案?

我知道 Flutter 支持事件通道将数据从 C++ 发送回 Flutter。但是仅仅在 Flutter 端请求数据并等待它到达 Future 怎么样,这样我就可以有很多小部件在FutureBuilder准备好时解析某些东西?

以上是Flutter的invokeMethod上有没有异步等待C++数据的解决方案?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>