免费试用

中文化、本土化、云端化的在线跨平台软件开发工具,支持APP、电脑端、小程序、IOS免签等等

app混合开发通信

随着移动互联网的快速发展,越来越多的企业开始关注移动应用的开发。而混合开发是当前最流行的开发方式之一。混合开发是指将网页开发技术和原生应用技术相结合,使用网页技术开发应用程序的框架,可以同时发布到不同的平台上。

混合开发通信是混合应用开发中的一个重要环节,当我们需要调用原生功能的时候就需要进行通信。现在我们主要介绍两种混合应用通信方式:JS-bridge 和 WebViewJavascriptBridge。

JS-bridge 原理

JS-bridge 是最早的混合应用通信方式之一,它使用 JavaScript 和 Native 代码相互调用的方式实现通信。通俗的说就是在 WebView 中通过 JavaScript 代码调用 Native 代码,然后 Native 代码再将结果返回到 WebView 中。

JS-bridge 的实现原理是将 WebView 中 JavaScript 函数封装成 Native 代码模块,Java 中使用 JavaBridge 实现了一个 Java 代码模块。WebView 中使用 JSBridge 将 JavaScript 代码转化成 Java 中 JavaBridge 对象中的方法调用,这样就实现了 Native 代码和 JavaScript 代码之间的调用。

JS-bridge 的优点是通信简单明了,不需要考虑兼容性,因为它直接调用了 Native 代码。但是它的缺点也很明显,由于是通过 JavaScript 调用 Native 的函数,其速度较慢。

WebViewJavascriptBridge 原理

WebViewJavascriptBridge 是基于 JS-bridge 原理的一种优化,他使用消息队列的方式进行通信。当WebView加载到需要与Native交互的页面时,会把一些符合条件的JS调用记录下来,当Native端初始化Bridge时,bridge会去检查一遍本地是否存在需要调用的方法,如果有就立即返回“OK”给JS。这样JS端在收到"OK"回传的时候也知道“本地”存在想要执行的方法。

如何使用WebViewJavascriptBridge呢?它需要引用两个脚本文件,分别是WebViewJavascriptBridge.js和WebViewJavascriptBridge_iOS.js。其中WebViewJavascriptBridge_iOS.js是WebViewJavascriptBridge.js的iOS实现。引用后需要初始化,然后JS调用Native时通过quickSend或send方法将消息放到队列里,Native会监听另一个队列,即handlerQueue,当发现有消息时,会将消息通过WebView的framework库发送给JS端。

虽然WebViewJavascriptBridge 是对 JS-bridge 进行优化改进之后的产物,解决了它各种卡顿问题,提供了一个更加高效、更加稳定的交互方式,但是如果你需要使用 WebViewJavascriptBridge 进行混合应用开发,它的API 文档还是需要认真看一看的。

综上所述,JS-bridge 和 WebViewJavascriptBridge 是混合应用中重要的通信方式。当我们需要进行混合应用开发的时候,需要选择合适的通信方式来保证程序的运行效率和稳定性。因为业务需求不同,通信方式可能有所不同,所以我们需要评估自己的需求,选择合适的通信方式。


相关知识:
c2g商城app开发
C2G商城App是一种电商平台应用程序,它允许消费者通过手机或平板电脑浏览和购买商品。这种应用程序基于客户到商家(C2G)的模型,意味着它提供给个人消费者与商家之间的直接联系和交易。C2G商城App的开发涉及许多关键方面,包括前端设计、后端开发、数据库管理
2023-07-14
app商城开发流程及注意事项
开发一个App商城涉及到的流程和注意事项如下:1. 确定需求和目标:首先要明确商城的功能和目标,包括商品展示、购买流程、支付方式等。还需要考虑用户界面设计和用户体验。2. 策划和设计:根据需求和目标,进行商城的整体策划和设计。包括网站结构、页面布局、颜色搭
2023-07-14
app开发准原生平台
移动应用开发是指开发和构建应用程序,可以在移动设备上运行。在移动应用开发中,有许多不同的平台和技术可供选择。其中一种常见的开发方式是使用准原生平台来开发应用程序。本文将详细介绍准原生平台的原理和开发流程。准原生平台是指使用Web技术(如HTML、CSS和J
2023-06-29
app开发的价值如何体现
在移动互联网的时代,智能手机已经成为人们日常生活中无法离开的必需品。手机上的APP(应用程序)则是人们日常生活中最常使用的软件之一,无论是购物、交通、娱乐、社交等等,APP都可以提供更为方便快捷的服务。在这样一个背景下,APP的开发已经成为很多企业和开发者
2023-06-29
app开发报价是如何计算的
APP开发报价通常是根据客户的需求和项目的复杂程度来计算的。开发公司通常会根据客户的需求提供一份详细的报价清单,其中包括开发费用、测试费用、服务器费用、维护费用等等。下面我们将具体介绍APP开发报价的计算原理和流程。一、需求分析客户提供的需求是APP开发报
2023-06-29
配置注入CSS样式表功能
怎么配置注入CSS样式表功能?1.在开发者中心【我的APP】找到需要配置的应用2.点击【配置APP】进入配置界面,找到【在线配置功能 】,再找到【注入CSS样式表】特别提示:点击图片上3图标,或注入CSS样式表这几个字,即可弹出该功能的配置窗口。&nbsp
2017-12-25