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...

相关推荐
wenzhangli71 小时前
Ooder A2UI 核心架构深度解析:WEB 拦截层的设计与实现
前端·架构
前端百草阁2 小时前
【前端性能优化全链路指南】从开发编写到构建运行的多维度实践
前端·性能优化
女生也可以敲代码2 小时前
AI时代下的50道前端开发面试题:从基础到大模型应用
前端·面试
ZhengEnCi2 小时前
M5-markconv自定义CSS样式指南 📝
前端·css·python
IT_陈寒2 小时前
SpringBoot自动配置的坑差点让我加班到天亮
前端·人工智能·后端
xingpanvip2 小时前
星盘接口开发文档:星相日历接口指南
android·开发语言·前端·css·php·lua
@PHARAOH3 小时前
WHAT - GitLens supercharged 插件
前端
TT模板3 小时前
苹果cms整合西瓜播放器XGplayer插件支持跳过片头尾
前端·html5
Wect4 小时前
React 性能优化精讲
前端·react.js·性能优化
追风筝的人er4 小时前
SpringBoot+Vue3 企业考勤如何处理法定假期?节假日方案、调休补班与工作日判断链路拆解
前端·vue.js·后端