WebView之通信,什么是WebView,为什么要通信,如何实现通信?
WebView之通信
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
webview和原生进行通信的方式有哪些?怎么实现
646浏览 • 1回复 待解决
局域网通信一般采用什么物联网通信协议?
2080浏览 • 1回复 待解决
js Fa如何实现线程间通信?
4122浏览 • 1回复 待解决
socket通信示例,创建tcp server和tcp client进行通信
228浏览 • 1回复 待解决
鸿蒙音视频通信系统如何实现
3396浏览 • 1回复 待解决
OpenharmonyOS 如何使用串口通信?
2826浏览 • 1回复 待解决
Binder通信,Binder是实现进程间通信(IPC)的重要机制,它是基础框架的一个核心组件。
360浏览 • 1回复 待解决
fegin 和 docker 通信问题
1557浏览 • 1回复 待解决
鸿蒙是否进行异步通信?
2581浏览 • 1回复 待解决
公共事件实现跨进程通信
482浏览 • 1回复 待解决
Native如何创建子线程,有什么约束,与主线程如何通信
668浏览 • 1回复 待解决
有哪些进程间通信的手段?例如,ExtensionAbility如何与主进程通信?
550浏览 • 1回复 待解决
Open Harmony 近场通信
5802浏览 • 1回复 待解决
线程间通信方式指导 ,有没有别的线程间通信方式?
573浏览 • 1回复 待解决
WebView中,双向交互可以使用JSBridge技术也可以使用端口通信技术,这两者有什么区别
722浏览 • 1回复 待解决
基于libuv异步库进行线程通信
561浏览 • 0回复 待解决
网页的代码和主进程的通信是否是跨进程
523浏览 • 1回复 待解决
HarmornyOS的网络管理模块,可以实现本机不同进程间的通信,该通信支持流式套接字技术。
6297浏览 • 1回复 待解决
TaskPool子线程和主线程如何通信
701浏览 • 1回复 待解决
为什么使用鸿蒙IDL时要让客户端和服务端通信必须运行Super App才行?
3891浏览 • 1回复 待解决
需要提供c++到js通信demo
285浏览 • 1回复 待解决
WINCE设备如何与桌面PC的MYSQL通信?
901浏览 • 1回复 待解决
PolarDB 如何进行数据通信?
1666浏览 • 1回复 待解决
openHarmony应用能与harmonyOS应用通信么?
6560浏览 • 1回复 待解决
"NAPI通信耗时长"导致丢帧分析
149浏览 • 1回复 待解决
什么是WebView
WebView指网页视图,基于 webkit 引擎。可以内嵌在移动端加载Web内容,实现前端的混合式开发,大多数混合式开发框架都是基于WebView模式进行二次开发的。比如:APIcloud、uni-app等等的框架。
WebView目前使用频率最多的,是客户端内嵌的WebView,小到我们地铁里用手机看的一篇公众号文章,大到我们使用App中的一些重要交互流程,其实都是WebView打开html页去承接的。
为什么要通信
绝大多数场景中,我们需要调用原生API集成酷炫的系统级功能,如传感器、存储、日历、联系人、相机等功能。而WebView作为独立的容器,其内部加载的html页面无法直接调用原生API,此时我们就需要进行容器内外通信。
通过数据传递,告知WebView容器外我们想要调用的原生API,并在ArkTS侧调用后将拿到的结果发送到html页面,然后,html页面里就可以根据拿到的数据实现各种炫酷的效果了。
如何实现通信
1、通过MessageChannel通信
− ArkTS侧代码
− html侧代码
2、javaScriptProxy通信
− ArkTS侧代码
− html侧代码
3、runJavaScript通信
− ArkTS侧代码:
− html侧代码
限制与约束
总结
通过本文我们了解了OpenHarmony WebView通信的三种方式。三种方式的主要区别在于主动发起方不同:
具体采用哪种通信方式,需要开发者根据各自业务场景去判断。