jsBridge是一种JS实现的Bridge连接着桥两端的Native和H5吗?

JavaScript07

jsBridge是一种JS实现的Bridge连接着桥两端的Native和H5吗?,第1张

jsBridge并不是用JS来实现在,相反是Native实现的。Chrome V8 引擎提供了允许开发者使用 Native语言,如C++、Delphi或者是其他语言来对浏览器对象进行扩展,这种扩展的结果就是你可以使用JS来调用该对象。这种做法就是jsBridge的本质。

由于 Html和Js 受浏览器安全策略的限制,无法精准控制所有本地硬件,如本地文件读写或者本地打印机等的访问,这时候,就需要使用这样的思想去做扩展。

前端 JSBridge 的主要原理是在前端页面和原生应用之间建立一个桥梁,使得两端能够相互通信。具体来说,前端页面通过调用 JavaScript 库中的 API 向原生应用发送请求,原生应用收到请求后会做出相应的操作,并通过回调函数或者事件监听将结果返回给前端页面。这样,前端页面就可以访问原生应用的资源和功能,而原生应用也可以获取前端页面的数据和操作。

在js中使用WebViewJavascriptBridge对象前必须判断WebViewJavascriptBridge是否存在,如果不存在,需要重新监听ready事件if。

JSBridge,指的是JavascriptBridge的简写;是一座使用Javascript语言建的桥梁,连接web端和native端。目的就是为了让native(native端支持webview,webview可以在加载完成后调用页面的JavaScript代码)可以调用web端的js代码(web端支持Javascript)。

让web端可以调用native原生代码。但是web在调用原生代码并不是直接调用,而是根据web和native之间规定好的条约来执行相应的原生代码。(虽然web端可以直接调用native端代码,但是实现起来比较麻烦,而且有很大的安全隐患)。

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

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

第二步:JS如何调用Native。

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

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

第五步:Native如何调用JS。

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