Hybrid App简介

  Hybrid App 是混合模式应用的简称,兼具 Native App 和 Web App 两种模式应用的优势,开发成本低,拥有Web技术跨平台特性。目前大家所知道的基于中间件的移动开发框架都是采用的 Hybrid 开发模式,例如国外的 PhoneGap、Titanium、Sencha,还有国内的 AppCan、Rexsee 等等。Hybrid App 开发模式正在被越来越多的公司和开发者所认同,相信将来会成为主流的移动应用开发模式。

  Hybrid开发方法结合了Native开发和Web技术。借助这种方法,开发者就能使用跨平台Web技术,开发应用程序的大部分代码,又可以在需要时直接访问Native API。

  App的Native代码部分使用操作系统的API来创建嵌入式HTML渲染引擎,该引擎在浏览器和设备的API之间充当了桥梁。这座桥梁让Hybrid App得以充分利用现代设备所提供的全部特性。

  App开发者可以选择编写自己的桥梁,或者充分利用现成的解决方案,比如PhoneGap——这种开源库为有选择的设备功能提供了在诸操作系统上保持一致的统一JavaScript接口。

  App的Native代码部分可以独立开发,但是市场上的一些解决方案把这种类型的Native容器作为其产品的一部分来提供,因而让开发者有办法只要使用Web语言,就可以构建利用设备所有特性的高级App。在一些情况下,解决方案让开发者可以充分利用现已掌握的任何Native开发技能,根据企业的独特要求来定制Native容器。

  App的Web部分可能是驻留在服务器上的网页,也可能是一组HTML、JavaScript、CSS和媒体文件,封装到App代码中,存储在设备本地。这两种方法都有其优势和局限性。放置在服务器上的HTML代码让开发者不必经历提交和批准过程——有些App商店要求这个过程,就可以对App进行小幅更新。遗憾的是,这个方法摈弃了任何离线可用性,因为设备与网络没有连接时,无法访问设备。另一方面,把Web代码封装到App里面可以提高性能和可访问性,但是不允许远程更新。如果结合这两种开发方法,也许可以集两者之所长。这种系统采用的架构可以把HTML资源放置在Web服务器上,以获得灵活性,但是又把它们本地缓存在移动设备上,以获得高性能。

  基于HTML5开发的Hybrid App 使用HTML5、CSS3进行应用界面的布局。通过JavaScript调用系统能力,如摄像头、传感器、数据传输、文件读写等。JS可以调用的系统能力不仅仅局限于功能层面,市场上也出现了支持UE交互完全使用原生实现的移动中间件。

  

上一篇:悟透JavaScript(二)


下一篇:Hybrid App: 看看第三方WebViewJavascriptBridge是如何来实现Native和JavaScript交互