论文部分内容阅读
当今已进入移动互联网时代,移动应用得到了广泛的应用。移动应用的开发有三种模式:原生本地应用、web应用和混合应用,其中混合应用是对前两者的综合,兼具两者的特点。当前虽然有众多混合应用开发框架,但其中许多仅仅使用移动设备的web视图作为应用显示界面,在部分场景下,该方式难以满足移动应用对效率的要求。针对这种不足,本文提出了一种可以同时支持web组件和本地组件的移动应用的混合开发框架。本文首先研究web前端技术、浏览器渲染引擎的结构与工作原理、Android的WebView实现以及当前主流的移动应用开发框架架构与实现原理,然后在此基础上,研究并提出移动混合开发框架的整体结构,设计框架工作流程和各个功能模块,并最终在Android平台上实现该框架。框架包括以下功能:(1)框架支持同时使用web组件和本地组件。移动混合应用分为web程序与本地程序两部分,两者分别由web组件和本地组件加载执行。(2)框架对web组件上运行的web应用提供完成的生命周期管理。Web应用的状态受整个混合应用以及应用开发者控制,包括加载、开始、继续、运行、暂停、停止和卸载等。(3)框架支持JS层与本地层之间传递消息,通过消息通信模块完成对消息的检查、封装、解析并提供多种方式进行传递。(4)框架为web应用拓展移动设备本地功能,插件模块实现本地功能并为web应用提供接口。(5)框架支持组件间交互。Web组件和本地组件不是独立的,当满足框架设置的访问控制条件时,组件之间可以通过Communicator模块相互调用彼此的方法。(6)框架支持动态替换web应用,通过网络加载模块从网络获取应用资源并异步加载应用。借助该开发框架,应用开发者可以根据应用场景的需要,针对应用不同的部分选择不同的组件,由web与本地组件共同构建移动混合应用。