小程序为什么比网页多出那么多能力

江河/ 2023年11月15日/ 小程序/ 浏览 427

我们称微信客户端给小程序所提供的环境为宿主环境。小程序借助宿主环境提供的能力,可以完成许多普通网页无法完成的功能。


说白了,网页在浏览器中运行,能力都是浏览器给的。因为不同的浏览器,还存在许多不一致的情况,即众所周知的浏览器兼容性问题。


小程序是在微信中运行的,因此只要是微信原因,微信能做到的,小程序都能够做到。


小程序的运行环境分成渲染层和逻辑层,其中 WXML 模板和 WXSS 样式工作在渲染层,JS 脚本工作在逻辑层。


小程序的渲染层和逻辑层分别由2个线程管理:渲染层的界面使用了WebView 进行渲染;逻辑层采用JsCore线程运行JS脚本。一个小程序存在多个界面,所以渲染层存在多个WebView线程,这两个线程的通信会经由微信客户端(下文中也会采用Native来代指微信客户端)做中转,逻辑层发送网络请求也经由Native转发,小程序的通信模型下图所示。



发表评论

暂无评论,抢个沙发...

客服 工单