美文网首页
手写一个JavaScriptBridge(支持JSContext

手写一个JavaScriptBridge(支持JSContext

作者: babyloveblues | 来源:发表于2022-04-29 17:38 被阅读0次

    概述

    JavaScriptBridge已经不是一个新鲜的东西了,但是最近因为业务要求,需要在JSContext环境提供一个Bridge来进行通信。所以做了一个同时支持Webview和JSContext环境的bridge。


    bridge.png

    开发思路

    这个两个接口都是单工的通信接口,而我们希望,当一端给另一端发送消息的时候,可以像发送网络请求那样得到响应。也就是说将两个单工的数据通道变成双工的。我们可以在其中抽象出一个bridge来处理消息的转发。
    例如:
    Native调用函数A给JS发送一个id为123的消息,JS处理完成之后,调用B方法给客户端传递一条id为123的消息
    反之亦然。
    客户端根据环境不同,建立和JS的通信环境和接口,建立两条单工的通道,两条单工通道组成一个双工通道。
    handleHoneMessageFromNative:客户端调用JS的时候,客户端维护回调id
    handleHoneMessageFromJS:JS调用客户端的时候,JS侧维护回调id

    image (1).png image.png

    Demo

    项目地址:https://github.com/BBC6BAE9/HWJavaScriptBridge

    相关文章

      网友评论

          本文标题:手写一个JavaScriptBridge(支持JSContext

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