美文网首页
Flutter和iOS通信的三种channel

Flutter和iOS通信的三种channel

作者: 张_何 | 来源:发表于2020-04-28 18:51 被阅读0次

    三种Channel

    • BasicMessageChannel:用于传递字符串和半结构化的信息。持续通信,收到消息后可以回复此次消息,如 Native 将遍历到的文件信息陆续传递到 Dart,在比如:Flutter 将从服务端陆续获取到的信息交给 Native 加工,Native 处理完返回等。

    • MethodChannel:用于传递方法调用(method invocation)。一次性通信:如 Flutter 调用 Native 拍照。

    • EventChannel: 用于数据流(event streams)的通信。持续通信,收到消息后无法回复此次消息,通常用于 Native 向 Dart 的通信,如:手机电量变化,网络变化,陀螺仪,传感器等

    这三种Channel之间互相独立,各有用途,但它们在设计上却非常相近。每种Channel均有三个重要成员变量:

    • name: String类型,代表Channel的名字,也是其唯一标识符。
    • messager:BinaryMessenger类型,代表消息信使,是消息的发送与接收的工具。
    • codec: MessageCodec类型或MethodCodec类型,代表消息的编解码器。

    相关文章

      网友评论

          本文标题:Flutter和iOS通信的三种channel

          本文链接:https://www.haomeiwen.com/subject/fkmbwhtx.html