一种面向智能手机的软件应用框架及其开发系统转让专利

申请号 : CN201110107379.2

文献号 : CN102184101B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赵悦

申请人 : 赵悦

摘要 :

本发明涉及一种面向智能手机的软件应用框架及其开发系统,应用框架包括触摸屏用户界面解释器、一般化消息服务调整器、轻量API对象封装集、服务资源控制器、核心功能对象及对象池、XML读写器和持久性映射关系模块;开发系统包括上下文与依存关系标准化定义器、用户界面描述器、消息描述器、代码框架生成器和持久性映射关系生成器。本发明具有良好的重用性和适应性,可以实现大规模生产的利润,可以缩短投放市场的时间,可以弥补人力资源不足。

权利要求 :

1.一种面向智能手机的软件应用框架,其特征是:包括触摸屏用户界面解释器、一般化消息服务调整器、轻量API对象集、服务资源控制器、核心功能对象及对象池、XML读写器和持久性映射关系模块;

触摸屏用户界面解释器:根据定义的用户界面布局描述文件,结合具体的智能手机触摸屏特点,生成实际的触摸屏界面;根据不同的触摸屏手势操作动作及操作位置,将不同的用户手势操作转换为相应的系统消息,并将系统消息送入一般化消息服务调整器处理;将由一般化消息服务调整器传来的系统消息转换为相应的屏幕输出,向用户显示运行结果;

一般化消息服务调整器:根据预定义的消息流传递规则,在触摸屏用户界面解释器、核心功能对象池、及XML读写器间传递消息;

轻量API对象集:对不同的智能手机操作系统的系统功能进行抽象,提炼得到一组与具体的智能手机操作系统无关的系统API,向核心功能对象提供一致的系统服务;

服务资源控制器:对系统的内存、外存及CPU资源进行集中管理并且在使用时通过轻量API对象集进行调用;

核心功能对象及对象池:核心功能对象由开发工具自动生成简易化模块接口,简易化模块接口负责完成与一般化消息服务调整器的消息交换功能,同时,核心功能对象通过轻量API对象集访问与具体的智能手机操作系统无关的系统API,核心功能对象池负责核心对象的动态生成和撤销;

XML读写器:将应用程序内部传递的消息按XML格式定义进行读写转换;

持久性映射关系模块:将转换后的XML格式消息,结合具体的智能手机操作系统的文件系统,或具体的数据库管理系统,完成在外存上的读写操作,保证信息的持久性保存;

指定智能手机操作系统为Android,将Android操作系统的用户界面、系统API以及存储管理系统功能结合,合并编译,生成Android应用程序;

或指定智能手机操作系统为iPhone,将iPhone操作系统的用户界面、系统API以及存储管理系统功能结合,合并编译,生成iPhone应用程序。

2.一种根据权利要求1所述的面向智能手机的软件应用框架的开发系统,其特征是:包括上下文与依存关系标准化定义器、用户界面描述器、消息描述器、代码框架生成器和持久性映射关系生成器;

上下文与依存关系标准化定义器:以模型-视图-控制器模式的多种对象交互的时序图方式描述应用程序内各对象的交互关系,上下文与依存关系标准化定义器根据交互关系生成应用软件内部状态描述文件;

用户界面描述器:将在上下文与依存关系标准化定义器中定义的视图对象,在用户界面描述器中对其布局进行详细描述,定义与智能手机操作系统无关的用户界面布局,用户界面描述器将用户界面布局转换为用户界面布局描述文件;

消息描述器:用于将在上下文与依存关系标准化定义器生成的应用软件内部状态描述文件中对象间的消息传递部分进行细化描述,明确定义消息流中各参数的数据类型及数据长度;

代码框架生成器:根据应用软件内部状态描述文件,结合对象间的消息流参数,为具体的核心功能对象生成简易化模块接口;

持久性映射关系生成器:根据应用软件内部状态描述文件,为模型对象产生的需要持久性存储的消息生成XML格式描述文件。

说明书 :

一种面向智能手机的软件应用框架及其开发系统

技术领域

[0001] 本发明属于计算机系统软件和应用软件领域,具体涉及一种面向智能手机的跨平台软件应用框架及其开发系统。

背景技术

[0002] 随着美国苹果公司iPhone手机以及美国谷歌公司Android智能手机等等智能手机操作系统的推出和普及,面向智能手机的应用软件开发已成为一个潮流。但有一个问题一直困扰着广大的智能手机应用软件开发人员:常见的智能手机操作系统有Symbian、Windows Phone、Black Berry、iPhone、Android、WebOS等多种,但没有一个智能手机绝对领先;同时,针对不同的智能手机的开发需要漫长的学习过程;开发支持多个手机平台的软件需要付出高昂的成本。
[0003] 由于存在多种操作系统,而各操作系统互不兼容,智能手机的片户也越来越分散,没有一个智能手机操作系统绝对领先,使得开发者不得不在操作系统中做出艰难的选择。通常的开发方式:为不同的手机平台单独开发软件。这样导致非常高的开发成本,而能得到的回报却相对有限。
[0004] 解决这些问题的一个合理的方法是为智能手机开发人员提供智能手机的跨平台开发能力。
[0005] 为了解决智能手机的跨平台开发,已经提出了三种方法:
[0006] 1、HTML 5和手机网页
[0007] 第一个方法就是开发手机网页版软件。可以访问本地数据库的HTML 5让这一点成为可能。但这一方法需要解决两个问题:第一,HTML 5的普及性不高;第二,用户不愿意把HTML 5当成一种标准。
[0008] 2、Flash
[0009] 美国Adobe公司推出了支持大部分平台的Flash浏览器,以及一个“Flash到iPhone软件”的编译器。这样,开发者只需在flash里编写所有软件,然后通过编译软件在多种手机浏览器上部署就可以了。这种方法也面临着用户是否可接受在浏览器内运行软件这一问题。此外,苹果反对在浏览器中使用Flash的强硬立场也是一个巨大障碍,因为需要两个完全不同的创建过程。同时,要想Flash得到普及,还需各智能手机操作系统厂家对网页版软件和非网页版软件一视同仁。
[0010] 3、JavaScript和本地软件
[0011] 第三种智能手机应用软件开发方法是,针对特定平台编译本地软件,但使用用户界面的网页技术。最着名的要算PhoneGap。其它同类软件还包括Appcel erator和Rhomobile(使用Ruby on Rails网页语言)。这些开源技术都允许开发者使用本地代码编写后台过程,然后利用HTML,CSS和JavaScript开发用户界面,然后把该软件编译成本地软件,然后上传到软件商店,通过下载安装进行发布。但是这种开发方法的最大问题在于开发用户界面需要深入了解各种手机。该技术的不足在于跨平台软件看上去不那么“本地化”,需要高超的设计和CSS技巧。
[0012] 以上这些方法都需要将智能手机的Web浏览器作为应用软件的运行容器,对于智能手机本身的软、硬件资源的利用极不充分。如很多智能手机已内置GPS接收器,而Web应用不能访问GPS信息。Web应用也不能充分利用智能手机的丰富的手势触摸操作的特点。同时,随着智能手机行业的不断发展,我们很难看到一个绝对领先者,因而,开发者仍然不得不针对多种平台开发软件。因此,必须寻找更有效的跨平台开发技术,使得开发者可以开发出既能充分利用智能手机自身资源,且大大降低开发成本,并能缩短学习过程,以便促进跨平台的手机应用软件开发成为现实。

发明内容

[0013] 本发明所要解决的技术问题是提供一种面向智能手机的软件应用框架及其开发系统,克服了智能手机跨平台软件开发方法存在的不能有效利用智能手机自身的用户界面特点,且能更充分地利用智能手机自身的软、硬件资源,并支持智能手机丰富的手势触摸操作,使开发人员可以快速开发出能够运行于多种智能手机操作系统之上的应用软件。
[0014] 本发明解决其技术问题所采取的技术方案是:一种面向智能手机的软件应用框架,包括触摸屏用户界面解释器、一般化消息服务调整器、轻量API对象封装集、服务资源控制器、核心功能对象及对象池、XML读写器和持久性映射关系模块;
[0015] 触摸屏用户界面解释器:根据定义的用户界面布局描述文件,结合具体的智能手机触摸屏特点,生成实际的触摸屏界面;根据不同的触摸屏手势操作动作及操作位置,将不同的用户手势操作转换为相应的系统消息,并将系统消息送入一般化消息服务调度器处理;将由一般化消息服务调度器传来的系统消息转换为相应的屏幕输出,向用户显示运行结果;
[0016] 一般化消息服务调整器:根据预定义的消息流传递规则,在触摸屏用户界面解释器、核心功能对象池、及XML读写器间传递消息;
[0017] 轻量API对象封装集:对不同的智能手机操作系统的系统功能进行抽象,提炼得到一组与具体的智能手机操作系统无关的系统API,向核心功能对象提供一致的系统服务;
[0018] 服务资源控制器:对系统的内存、外存及CPU等资源进行集中管理并且在使用时通过轻量API对象集进行调用;
[0019] 核心功能对象及对象池:核心功能对象是由开发人员编写的与具体的智能手机操作系统无关的核心功能,开发时由开发工具自动生成简易化模块接口,简易化模块接口负责完成与一般化消息服务调度器的消息交换功能,同时,核心功能对象通过轻量API对象封装集访问与具体的智能手机操作系统无关的系统API,核心功能对象池负责核心对象的动态生成和撤销;
[0020] XML读写器:将应用程序内部传递的消息按XML格式定义进行读写转换;
[0021] 持久性映射关系模块:将转换后的XML格式消息,结合具体的智能手机操作系统的文件系统,或具体的数据库管理系统,完成在外存上的读写操作,保证信息的持久性保存。
[0022] 一种面向智能手机的软件应用框架的开发系统,包括上下文与依存关系标准化定义器、用户界面描述器、消息描述器、代码框架生成器和持久性映射关系生成器;
[0023] 上下文与依存关系标准化定义器:以模型-视图-控制器模式的多种对象交互的时序图方式描述应用程序内各对象的交互关系,上下文与依存关系标准化定义器根据交互关系生成应用软件内部状态描述文件;
[0024] 用户界面描述器:将在上下文与依存关系标准化定义器中定义的视图对象,在用户界面描述器中对其布局进行详细描述,定义与智能手机操作系统无关的用户界面布局,用户界面描述器将用户界面布局转换为用户界面布局描述文件;
[0025] 消息描述器:用于将在上下文与依存关系标准化定义器生成的应用软件内部状态描述文件中对象间的消息传递部分进行细化描述,明确定义消息流中各参数的数据类型及数据长度;
[0026] 代码框架生成器:根据应用软件内部状态描述文件,结合对象间的消息流参数,为具体的核心功能对象生成简易化模块接口;
[0027] 持久性映射关系生成器:根据应用软件内部状态描述文件,为模型对象产生的需要持久性存储的消息生成XML格式描述文件。
[0028] 本发明的有益效果是:1、本发明具有良好的重用性,通过使用本发明,可保证应用软件的核心功能在不同的智能手机上是相同的。2、本发明具有良好的适应性,可以根据不同的智能手机操作系统,在编译生成具体的应用软件时,通过指定具体的智能手机操作系统的用户界面和系统功能API,生成可在不同的智能手机上运行的应用软件。3、可以实现大规模生产的利润。4、可以缩短投放市场的时间。5、可以弥补人力资源不足。

附图说明

[0029] 图1是本发明一种面向智能手机的软件应用框架的模块图;
[0030] 图2是本发明一种面向智能手机的软件应用框架的开发系统的模块图。

具体实施方式

[0031] 如图1所示一种面向智能手机的软件应用框架,包括触摸屏用户界面解释器、一般化消息服务调整器、轻量API对象封装集、服务资源控制器、核心功能对象及对象池、XML读写器和持久性映射关系模块。
[0032] 如图2所示一种面向智能手机的软件应用框架的开发系统,包括上下文与依存关系标准化定义器、用户界面描述器、消息描述器、代码框架生成器和持久性映射关系生成器。
[0033] 上下文与依存关系标准化定义器根据交互关系生成应用软件内部状态描述文件,描述内容包括:对象类型(形如<模型/视图/控制器>),表示对象为模型对象,或视图对象,或控制器对象中的一种;对象交互关系对(形如<视图对象1-控制器1>),表示视图对象1向控制器对象1发送消息;消息流(形如<参数1,参数2,…>)。
[0034] 本发明的一个实施例如下:
[0035] 1、在上下文与依存关系标准化定义器中定义应用软件的功能交互关系图。
[0036] 2、对应于视图对象,在用户界面描述器中建立用户界面描述。用户界面描述器生成用户界面描述脚本。
[0037] 3、对应于对象消息流,在消息描述器中细化消息描述,生成消息描述文件。
[0038] 4、根据模型对象的消息流,生成持久性映射关系XML描述文件。
[0039] 5、使用代码框架生成器为模型对象和控制器对象生成相应的简易化模块接口。
[0040] 6、应用软件开发人员编写模型对象和控制器对象内部代码。
[0041] 7、根据具体的应用要求,生成指定的手机操作系统应用软件。
[0042] 7a、指定智能手机操作系统,如Android,将Android操作系统的用户界面、系统API以及存储管理系统功能结合,合并编译,生成Android应用程序。
[0043] 7b、指定智能手机操作系统,如iPhone,将iPhone操作系统的用户界面、系统API以及存储管理系统功能结合,合并编译,生成iPhone应用程序。
[0044] 由上述方法,可得到能够运行与Android和iPhone上的功能相同的智能手机应用软件,实现智能手机的跨平台开发。