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 使用HTML五、CSS3进行应用界面的布局。经过JavaScript调用系统能力,如摄像头、传感器、数据传输、文件读写等。JS能够调用的系统能力不单单局限于功能层面,市场上也出现了支持UE交互彻底使用原生实现的移动中间件。布局