欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

JSBridge是什么

程序员文章站 2022-03-19 19:33:42
...

JSBridge是JS和Native之间的一种通信方式,也就是定义Native和JS的通信,其中Native只通过一个固定的桥对象调用JS,而JS也只通过固定的桥对象调用Native。

JSBridge是什么

本篇文章将介绍做过混合开发的人都知道Ionic和PhoneGap之类的框架,这些框架在web基础上包装一层Native,然后通过Bridge技术的js调用本地的库。

JSBridge:听其取名就是js和Native之前的桥梁,而实际上JSBridge确实是JS和Native之前的一种通信方式。简单的说,JSBridge就是定义Native和JS的通信,Native只通过一个固定的桥对象调用JS,JS也只通过固定的桥对象调用Native。JSBridge另一个叫法及大家熟知的Hybrid app技术。

流程:H5->通过某种方式触发一个url->Native捕获到url,进行分析->原生做处理->Native调用H5的JSBridge对象传递回调。

我们前面讲过了原生的WebView/UIWebView控件已经能够和Js实现数据通信了,那为什么还要JSBridge呢?

其实使用JSBridge有很多方面的考虑:

Android4.2以下,addJavascriptInterface方式有安全漏掉

iOS7以下,JS无法调用Native

url scheme交互方式是一*有的成熟方案,可以完美兼容各种版本,对以前老版本技术的兼容。

JSBridge技术实现

要实现JSBridge,我们需要按以下步骤分析:

第一步:设计出一个Native与JS交互的全局桥对象

第二步:JS如何调用Native

第三步:Native如何得知api被调用

第四步:分析url-参数和回调的格式

第五步:Native如何调用JS

第六步:H5中api方法的注册以及格式

JSBridge的完整流程可总结为:

以上就是JSBridge是什么的详细内容,更多请关注其它相关文章!

相关标签: JSBridge