(一)Hybrid app混合开发模式

hybrid app是什么?

这里我们先看一下词条上的定义

Hybrid App:Hybrid App is a mobile application that is coded in both browser-supported language and computer language. They are available through application distribution platforms such as the Apple App Store, Google Play etc. Usually, they are downloaded from the platform to a target device, such as iPhone, Android phone or Windows Phone. The subscribers need to install to run them.

翻译过来的意思是

1、明确主体是一款mobile app(即手机App)

2、使用浏览器支持及计算机语言编码

3、可以发布在各个手机平台的应用商店里

4、可安装运行

这里我个人的理解是首先它是一款App,作为一款App应该有的功能就是可以发布和安装运行,也就是上面??的3和4,而它的组成是计算机编码。

其次再理解字面意思,hybrid的意思是混合,与之相对应的是native app和web app,native的意思是原生,web的意思是网页,而hybrid的意思自然是要兼顾二者之长,举个栗子就像油电混合动力的汽车一样。web app的好处是兼容性比较好,native app的好处是性能和用户体验性比较好,而hybrid app要兼容这两者,但目前对于hybrid app开发来讲这是个对立与统一的命题。

实现模式

native app构建一个全屏化的web浏览器,进入app默认打开主页

用户界面渲染构建采用web app模式,即浏览器支持语言 html +  css + js编码构建界面

发布构建采用native app模式,只是不同于原生模式的是引入的是经过自动化构建工具封装的资源文件(一般在www文件夹下)

native app与web app的通信方式是通过JSAPI模式进行回调,比如Cordova、JSBridge以及其他框架下封装的方式,但这个过程是大同小异的,这里列举Cordova的通信模式图

从体验上来讲,hybrid肯定比不上native的,native具备与生俱来的性能优势,但开发成本比较大,对于一个需要快速迭代成型并且占领市场的产品来说native开发显得不太合适,而hybrid拥有在成本控制上的优势,虽然媲美不上native,但却拥有比较接近native的体验,这是个比较折中的方案选择,但对于产品长期生存来讲,不断提升用户体验才是最好的选择。

分工合作

正如上面实现模式所讲的,native原则上是为web开发提供了一套宿主环境,而这个宿主环境本质上是一个基于H5的webkit内核的native浏览器,而且这个浏览器提供了调用native方式的接口,相当于native开发为前端开发提供了系统级的API,因此从前端的角度看过去就是自己很熟悉的接口调用,只是不同的是这些系统级的API不是传统的HTTP请求,而是在寄生在这个浏览器的公共变量里,比如window对象。

目前工作上用到的通信方式是Cordova,Cordova整理的资源如下:

官网:https://cordova.apache.org/docs/en/8.x/guide/overview/index.html

GitHub资源:https://ionicframework.com/docs/native/(这个资源要看GitHub地址上的文档说明)

原文地址:https://www.cnblogs.com/riemann66l/p/9573642.html

时间: 2024-11-07 16:07:10

(一)Hybrid app混合开发模式的相关文章

Hybrid APP混合开发的一些经验和总结

Hybrid APP混合开发的一些经验和总结 写在前面: 由于业务需要,接触到一个Hybrid APP混合开发的项目.当时是第一次接触混合开发,有一些经验和总结,欢迎各位一起交流学习~ 1.混合开发概述 Hybrid App主要以JS+Native两者相互调用为主,从开发层面实现“一次开发,多处运行”的机制,成为真正适合跨平台的开发.Hybrid App兼具了Native App良好用户体验的优势,也兼具了Web App使用HTML5跨平台开发低成本的优势. 目前已经有众多Hybrid App开

混合开发模式下主流移动开发平台分析

关键字:AppCan 移动开发平台 移动应用 Hybrid App在过去的两年中已经成为移动界的核心话题,但是作为一名Web开发者来说要如何站在移动互联网的浪潮之巅呢?是选择学习原生开发,研究Java.Object-C.C#等语言,还是选择继续使用网页开发,容忍HTML5功能的局限性?就在开发者左右为难的情况下Hybrid App作为一个折中的解决方案诞生了.那么究竟什么才是Hybrid App呢?HybridApp概念Hybrid App:Hybrid App is a mobile appl

深度解析App混合开发技术的成熟度曲线(一)

"快速导读:APICloud联合创始人兼CTO邹达近日以Gartner技术成熟度曲线"为模型,对app混合开发技术的成熟度趋势进行了深度解析,并通过鲜明的观点.清晰的论据撰写成学术文章,供以行业人士解读;本篇将分享上半章内容--参照Gartner"技术成熟度曲线",揭示app混合开发技术五个重要阶段! 众所周知,HTML5技术本身具有许多优势.但是,如果HTML5想成为移动互联网时代app开发的主流技术,有一个必要的前提条件,就是它的功能.性能和API扩展能力上必须

霸屏天下APP系统开发模式

霸屏天下APP系统开发模式 找131.2935.5821 微/电 霸屏天下APP软件开发,霸屏天下系统模式开发,霸屏天下app软件开发 互联网+的商业思维就是引流客户数量,让客户有黏性,满足客户的需求,了解客户的痛点,为客户节约时间,愿意把时间花在你的企业上,这样的企业就会长久,就会盈利. 霸屏天下APP系统模式制度: 1.只需要押金99元.每天发圈得8元,把你的微信朋友圈打造成自动提款机.2.分享好友成为会员可得奖励,一级8元,二级还有8元.3.一级会员发圈你可以得4元/每天,分享10个就40

Hybrid App混合模式移动应用开发(AngularJS+Cordova+Ionic)

以前公司开发了某手机APP是通过jquerymobile来实现的,发现它对手机上的原生设备无能为力.于是在下一个项目到来之际,通过筛选最终决定使用cordova+Ionic.看起来简单,但是因为他们各自有一些依赖,林林总总,最终涉及的内容便不少了. 如下所示: 环境搭建:window 1.JAVA-SDK 安装配置(版本7以上) 这个没什么难度,到官网下载jdk,然后按照步骤配置环境变量即可.配置完成后,记得校验jdk安装是否成功. JDK安装及环境变量配置 2.Android-SDK 安装配置

Vue+原生App混合开发手记#2 融云即时通讯

最近开发的一个医药项目中要求加入即时通讯,最后选择了融云IM即时通讯服务,融云即时通讯包含Android SDK,iOS SDK以及Web SDK,为了节省开发时间,使用了Web SDK,这样在Android平台和iOS平台上都能表现一致.这是部分界面的效果, 分为两类用户,一类是医生,接受患者的咨询,一类是患者,可以与医生交流: 医生用户看到的界面 患者用户看到的界面 聊天界面       获取App Key 首先进入融云官网,找到Web SDK开发指南,按照提示先注册一个账号,拿到AppKe

h5与app混合开发,jsbridge

https://juejin.im/post/5bda6f276fb9a0226d18931f https://juejin.im/post/5abca877f265da238155b6bc https://juejin.im/post/599a58f6f265da247b4e756b ios:https://www.jianshu.com/p/d12ec047ce52 android:https://www.cnblogs.com/whoislcj/p/6104015.html https:/

hybrid app开发工具

hybrid app开发工具 1.AppCan AppCan是国内Hybrid App混合模式开发的倡导者,AppCan应用引擎支持Hybrid App的开发和运行.并且着重解决了基于HTML5的移动应用"不流畅"和"体验差"的问题.使用AppCan应用引擎提供的Native交互能力,可以让HTML5开发的移动应用基本接近Native App的体验. AppCan作为中国Hybrid混合应用开发.移动平台.移动云平台的倡导者和领导者,以"免费+开源+开放&

Hybrid APP介绍

"云"时代的来临正在改变App和运营团队之间的关系,一场不能避免的变革正在进行.鉴于移动终端的局限性,移动终端上的APP由本地化应用(Native App),到混合型应用(Hybrid APP),再到基于WEB的应用Web App,这一连串的变化都源于技术的更新和市场的需要[1] . Hybrid App是指介于web-app.native-app这两者之间的app,它虽然看上去是一个Native App,但只有一个UI WebView,里面访问的是一个Web App,比如街旁网最开始