论文部分内容阅读
随着移动互联网的迅速发展,各大公司都纷纷加入移动互联网的竞争当中。然而,各个平台之间的差异,苹果IOS、谷歌Android微软WinPhone平台之间差异巨大,各个厂商之间标准不一,使得移动互联网之间的竞争很大程度上由移动平台所主导。同样的应用,程序员必须根据不同的平台开发个同的版本,有没有可能只开发一次就在所有的平台上运行呢。随着HTML5标准的正式推出。作为下一代移动互联网的关键技术,对于跨平台的应用开发提供了新的方案。然而现在HTML5的生态系统还不完善,相比而言,Android已经有了一个非常成熟的生态系统,在此基础上也有了众多非常优秀的应用。加上Android系统开源的巨大优势,结合当下的HTML5的技术,是否可以把已有的Android项目转换成可以在浏览器端直接运行或者只需要部分修改就可以运行的HTML5的项目,缩短HTML5开发人员的开发周期。本项目就是在这样的背景之下提出的。本项目的目的是利用Java, JavaScript和HTML5设计与实现Android Framework中的各个模块以及Android系统中各个服务,使该基于浏览器的Android系统能提供尽可能多的API和Service以支持尽可能多的Android应用程序。本文主要侧重于介绍项目中的基于JavaScript来实现Android Framework的各个模块。本文的主要工作内容如下:1.对现阶段应用程序的移植和跨平台的现状及问题进行概述,对比了业界和学术界不同的工具和解决方案,分析了不同解决方案的优缺点,并在此之上提出了基于JavaScript的解决方案。2.对基于JavaScript的Android Framework的系统从架构上进行了分析设计。从系统运行最关键的应用程序框架层的不同组件模块进行了介绍,分析了各个模块的需求和设计目标。3.从项目启动和程序加载的过程开始,分别介绍了各个核心模块的启动、加载和工作流程,通过类图和顺序图及相关代码,介绍了模块的内部具体实现细节。4.重点介绍了如何基于JavaScript来实现多线程编程的模型,从多线程编程模型的概述和配置,调度程序和代码转换器等不同方面介绍了它的设计和实现。通过使用敏捷开发的软件开发方法和集成Jenkins的测试开发环境,经过大量的测试评估,现在本项目已经可以实现90%以上的Android核心AP1。