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

相关推荐
怕浪猫几秒前
React从入门到出门 第五章 React Router 配置与原理初探
前端·javascript·react.js
jinmo_C++1 分钟前
从零开始学前端 · HTML 基础篇(一):认识 HTML 与页面结构
前端·html·状态模式
鹏多多7 分钟前
前端2025年终总结:借着AI做大做强再创辉煌
前端·javascript
小Tomkk16 分钟前
⭐️ StarRocks Web 使用介绍与实战指南
前端·ffmpeg
不一样的少年_20 分钟前
产品催: 1 天优化 Vue 官网 SEO?我用这个插件半天搞定(不重构 Nuxt)
前端·javascript·vue.js
-dcr21 分钟前
50.智能体
前端·javascript·人工智能·ai·easyui
行者9631 分钟前
Flutter跨平台开发适配OpenHarmony:进度条组件的深度实践
开发语言·前端·flutter·harmonyos·鸿蒙
云和数据.ChenGuang32 分钟前
Uvicorn 是 **Python 生态中用于运行异步 Web 应用的 ASGI 服务器**
服务器·前端·人工智能·python·机器学习
IT_陈寒33 分钟前
SpringBoot 3.0实战:这5个新特性让你的开发效率提升50%
前端·人工智能·后端
遗憾随她而去.42 分钟前
Webpack 面试题
前端·webpack·node.js