初步思路:
- Flutter Channel Handler 中,加入一个方法。
- 这样,当一个引擎中的 Flutter fire 的时候,首先来到端上 fire,触发端上监听
- 然后,再遍历引擎的 messger,依次向各个引擎调用第一步中的方法
- 这样再第一步的方法中,各个引擎分发各个引擎内 Flutter 的回调
这里需要注意的一点是,在从 Native 往回分发的时候,发出 fire 的那个引擎,实际上不需要往回分发了。该如何辨别呢?
一种思路:在 Native 中维护一个 id 计数器,每次建立连接后,都将 id 回传给 flutter 側,后续的 Flutter 消息都带着 id,这样在往回分发的时候就能够辨别了。