您的位置:首页 > 移动开发

WebViewJavascriptBridge源码解析 -1

2017-11-05 14:04 375 查看
WebViewJavascriptBridge 强大实用的一款支持OC和JavaScript桥接的框架

有关他的实用网上非常多,这里不再赘叙。但是源码分析网上还是太杂了,我这里紧跟着源码一行行的进行分析吧。

我们进入WebViewJavascriptBridge类,可以看到:



其实,这个WebViewJavascriptBridgeBase才是内核所在,WebViewJavascriptBridge只是对他的使用层的一个封装而已,后面会分析。

看到这句:

- (void)registerHandler:(NSString *)handlerName handler:(WVJBHandler)handler {
_base.messageHandlers[handlerName] = [handler copy];
}

- (void)removeHandler:(NSString *)handlerName {
[_base.messageHandlers removeObjectForKey:handlerName];
}

这个handler是我们调用的时候的一个block:



就可以知道,原来,messageHandler是一个字典类型,用你传进来handerName作为key,用你传进来的block copy一份作为handler的object。



别的参考这位大神的分析:
http://www.jianshu.com/p/1d41f16f3bac


看了之后你会知道,其实最重要是集中在这三个地方:

1.Native和JS之间的交互(JS注入,JS回调等)

2.消息队列的分发和处理

3.序列化和反序列化

下一章节会分别阐述上面的几个内容。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  WebView桥接