jsBridge

Hybrid就是Native、H5混合开发技术 Android有 webview 、iOS 有 UIWebview和 WKWebview

前置知识:

app的分类:1.web-app;2.native-app;3.hybrid-app

1.web-app

本质上就是手机上的pc端,他所有的功能都是通过js开发,不涉及到本地功能(图片、扫码)等,全是在手机浏览器中展示。他严格意义上不能称为app,因为用户不需要安装app,只是在手机浏览器上展示的pc。缺点: 1.无法获取系统级别的通知,提醒,动效等等。

2.用户留存率低 设计受限制诸多 体验较差。

2.native-app

native-app就是我们通常说的原生app,分为Android开发和IOS开发。Android基于Java语言,底层调用Goolge提供的API,IOS基于Objective c或Swift,底层调用Apple官方提供的Api。他的优势在于,和手机系统的交互更好,可实现功能强大。 缺点:跨平台能力差;更新周期慢(具体表现在每次更新发布都需要等待审核,没有webview远端获取灵活,不用审核)

3.hybrid-app

hybrid就是目前主流的混合应用开发,就是将上述两者结合起来。或者说:将原生app中相对来说灵活变动的内容&UI对应的地方让出来,交给webview去加载html展示给用户。这样既保证了功能的强大性,有具有了相对的灵活性。缺点:虽然弥补了一定的灵活性,但是相比原生性能上有很大的损耗,因此不适用于交互性较强的App。

背景

hybrid混合开发 是针对移动端开发的一种开发模式:历史的移动端开发是专门的安卓、ios开发,使用的开发功能都是在app安装包中构建好的,安装在移动端的,如果要更改功能或者UI的话,需要提示用户应用软件升级,这就显得非常的麻烦。如果可以将移动端中的功能更新也像pc端中的网页那样,需要向远端请求更新就行,而不用更新整个软件安装包,那就好了。但是有些全部改成纯网页有不能完全覆盖移动端工功能。因此两个各取其长,对于那些展示的或者可以替代本地功能的使用html & js开发,通过webview展示,其他的还是使用native开发。这种开发模式就是hybrid开发。

那么使用hybrid开发真的是没有任何缺点的嘛? 拥有了灵活性的同时,性能降低。这里的性能是针对谁的性能,对应的性能指标是什么?

概括性来讲:通常所说的webview的性能问题,就是针对从打开webview页面,到可以和用户交互的这段用户等待时间,作为衡量的指标,而这也是影响用户留存率的重要因素。

分析webivew性能,要想分析webview为什么慢?我们就得知道webview加载渲染的流程是什么,以及是在哪个流程慢,我们可以在哪几个流程优化。 不同于pc端浏览器,我们打开app加载页面这期间的用户等待时间,还要额外加上启动webview的时间,因为打开app的时候不会打开并初始化webview的,因此,在移动端中的首屏时间需要计入初始化webview的时间。 www.zhihu.com/question/45...

相关推荐
一个风轻云淡4 小时前
GCC 和 GDB命令简单解读
java·linux·前端
u0111026755 小时前
图片处理接口如何统一错误信息 前端提示与后端错误码设计
前端·状态模式
福兮说5 小时前
浏览器里把 iPhone 的 HEIC 转成 JPG:Chrome 解不开、转完大了七成、拍摄时间全丢,六个坑实测
前端·javascript·图像处理·chrome·ios·iphone·heic
libokaifa5 小时前
把语音模型塞进手机:sherpa-onnx 在 Android 上的 ASR / TTS
前端
deli0076 小时前
DLA 枝晶生长实测:5000 个粒子集体停摆之后,分形维数收敛到 1.70
前端
IT_陈寒6 小时前
Redis卡顿的锅,这次真不是大key的错
前端·人工智能·后端
可乐鸡翅yeah_6 小时前
video.js 集成 hls.js 开发 M3U8 播放器,新手高频踩坑
开发语言·前端·javascript·后端·ecmascript·m3u8·音视频在线播放
程序猿追6 小时前
HarmonyOS 6 上做个极简浏览器:Web 组件 + 前进后退 + 加载进度
前端·华为·harmonyos
沐沐师7 小时前
Mybatis 框架教程
前端
三天不学习7 小时前
Tailwind CSS 快速入门(2026 版):从 v4 零配置上手,到「该不该用、怎么用好」的选型实战
前端·css·tailwind