一种移动应用html和native交互系统及其方法

文档序号:6364738阅读:183来源:国知局
专利名称:一种移动应用html和native交互系统及其方法
技术领域
本发明涉及一种移动应用html和native交互系统及其方法,通过该移动应用html和native交互系统,开发人员可以结合html和native,利用两者的优势开发移动应用系统,用户也能在感受优秀用户体验的同时,使用移动应用系统本身强大的功能
背景技术
当前html技术在快速构建UI (User Interface用户界面)有不少优势,例如能够快速地构建原型、方便产品设计、快速的UI开发能力、Π修改成本较低等。同时html也具有跨平台上的优势,例如移动平台普遍采用Webkit核心、针对不同屏幕分辨率可以采用自适应布局保证兼容性、开发语言和渲染系统几乎完全一致。而移动应用系统(Andreid系统和iPhone的ios系统)的native方式可以直接访问系统所有硬件,能充分发挥硬件能力,在大数据量运算速度方面远远快于JavaScript,网络传输效率、后台运行能力也比较好。本发明的移动应用html和native交互系统,可以利用html在页面设计和跨平台上的优点以及native在调用系统功能和系统性能方面的优点,降低在跨平台上的开发难度,提高开发移动应用的效率。

发明内容
本发明的移动应用html和native交互系统由手机客户端系统和服务端系统构成。包括客户端服务端交互模块,客户端数据缓存模块,客户端native扩展模块,服务端服务提供模块。客户端服务端交互模块是在webkit引擎浏览器中,使用dwr操作数据的方式来连接服务端获取数据。在服务端,将要提供的服务通过xml文件的方式进行配置,在客户端,通过javascript的方式调用服务端所提供的服务。客户端数据缓存模块将用户访问的数据缓存于客户端本地数据库,用户在首次访问之后,后续都默认从客户端本地数据库中获取数据,只有当用户显式的刷新时才会从服务端重新获取数据。在缓存过程中,首先判断之前是否有相同数据,若有,则不缓存,若没有,则缓存。在获取数据过程中,对数据有失效时间判断,若已过失效时间,则无法获取数据,若未过失效时间,则返回数据给页面。客户端native扩展模块可以调用移动应用系统本身的功能。如定位功能,在客户端页面有相应入口,通过MskyGap框架,调用系统硬件模块,获取手机所处位置的经纬度,再调用服务端的地图功能,在客户端页面显示所处位置的地图。服务端服务提供模块提供了客户端所要调用的服务,但不能被客户端直接调用,需要通过配置文件的方式开放调用接口。根据本发明的移动应用html和native交互方法,包括如下步骤步骤1,打开客户端页面,判断是否首次访问;
步骤2,如果是首次访问,客户端服务端交互模块向服务端提交获取数据请求,从服务端获取数据; 步骤3,如果不是首次访问,则从客户端获取数据;步骤4,判断是否获取数据成功,如果否,则返回步骤I ;步骤5,如果在步骤4中判断为获取数据成功,客户端数据缓存模块将数据缓存入客户端数据库,并在客户端页面显示数据;步骤6,根据客户端指令,判断是否进行显式刷新,如果是,则客户端服务端交互模块会再次向服务端提交获取数据请求,返回步骤2 ;服务端服务提供模块将请求数据返回给客户端页面,客户端数据缓存模块将数据缓存入客户端数据库;如果判断为不进行显示刷新,则进入下一步骤;步骤7,根据客户端选择的功能指令,客户端native扩展模块调用移动应用系统相应功能。在步骤2如果是首次访问,在webkit引擎浏览器中用javascript异步调用的方式调用服务端开放给客户端的接口,并获取数据。在步骤4如果是从服务端获取数据,服务端服务提供模块首先接收到客户端发过来的服务请求,其次判断服务端是否具有该服务,如果没有,则返回错误信息给客户端,如果有,再判断该服务是否已开放给客户端,如果没有,则返回错误信息给客户端。如果是从客户端获取数据,客户端数据缓存模块首先判断待获取缓存数据是否已过失效时间,如果已过,则不返回数据。所述步骤4包括如下子步骤步骤4. 1,如果是从服务端获取数据,服务端服务提供模块接收客户端发送过来的服务请求;步骤4. 2,判断是否有该服务,如果服务端没有该服务,则返回错误信息,并回到步骤4. I ;如果有服务,则进入下一步骤;步骤4. 3,判断是否服务已开放给客户端,如果服务未开放,则返回错误信息,并回到步骤4. I ;如果服务已开放,则进入下一步骤;步骤4. 4,将请求服务数据返回给客户端。步骤4. 5,客户端数据缓存模块从客户端数据库获取数据;步骤4. 6,判断缓存数据是否已失效(过期),如果已失效,则返回空数据;步骤4. 7,如果未失效,则返回数据。在步骤5如果在步骤2中判断为获取数据成功,客户端数据缓存模块首先判断客户端数据库是否已有相同数据,如果已有,则不缓存,如果没有,则将数据缓存入客户端数据库。并在客户端页面显示数据。所述步骤5包括如下子步骤步骤5. 1,客户端数据缓存模块将从服务端获取到的数据存入客户端数据库;步骤5. 2,判断缓存数据是否已存在,如果存在,则不缓存;步骤5. 3,如果不存在,则缓存。在所述步骤6,有以下子步骤步骤6. 1,选择使用移动应用系统功能;步骤6. 2,如果调用失败,则显示错误信息,并返回步骤6. I ;步骤6. 3,如果调用成功,则实现相应功能。
在步骤7首先判断移动应用系统是否有相应功能,如果没有,则返回错误信息,如果有,则展现实际效果。


图I为本发明移动应用html和native交互系统方框图;图2为 本发明移动应用html和native交互方法的总体流程图;图3为本发明移动应用html和native交互方法的服务端服务提供流程图;图4为本发明移动应用html和native交互方法的客户端数据缓存流程图;图5为本发明移动应用html和native交互方法的使用客户端native功能流程图。
具体实施例方式如图I所示,本发明的移动应用html和native交互系统由手机客户端系统和服务端系统构成。包括客户端服务端交互模块,客户端数据缓存模块,客户端native扩展模块,服务端服务提供模块。由两台IBM小型机组成应用服务器集群,两台小型机构成HTTP接入服务器,一台小型机构成数据库系统。HTTP接入服务器负责接收所有请求,然后根据负载均衡将请求分配到应用服务器集群其中一台。应用服务器处理成功后会将数据记录写入数据库服务器。客户端服务端交互模块是在webkit引擎浏览器中,使用dwr操作数据的方式来连接服务端获取数据。在服务端,将要提供的服务通过xml文件的方式进行配置,在客户端,通过javascript的方式调用服务端所提供的服务。客户端数据缓存模块将用户访问的数据缓存于客户端本地数据库,用户在首次访问之后,后续都默认从客户端本地数据库中获取数据,只有当用户显式的刷新时才会从服务端重新获取数据。在缓存过程中,首先判断之前是否有相同数据,若有,则不缓存,若没有,则缓存。在获取数据过程中,对数据有失效时间判断,若已过失效时间,则无法获取数据,若未过失效时间,则返回数据给页面。客户端native扩展模块可以调用移动应用系统本身的功能。如定位功能,在客户端页面有相应入口,通过MskyGap框架,调用系统硬件模块,获取手机所处位置的经纬度,再调用服务端的地图功能,在客户端页面显示所处位置的地图。服务端服务提供模块提供了客户端所要调用的服务,伹不能被客户端肓接调用,需要通过配置文件的方式开放调用接口。如图2所示,本发明的移动应用html和native交互系统,其移动应用html和native交互方法包括如下步骤步骤1,打开客户端页面,判断是否首次访问;步骤2,如果是首次访问,客户端服务端交互模块向服务端提交获取数据请求,从服务端获取数据;步骤3,如果不是首次访问,则从客户端获取数据;步骤4,判断是否获取数据成功,如果否,则返回步骤I ;步骤5,如果在步骤2中判断为获取数据成功,客户端数据缓存模块将数据缓存入客户端数据库,并在客户端页面显示数据;步骤6,根据客户端指令,判断是否进行显式刷新,如果是,则客户端服务端交互模块会再次向服务端提交获取数据请求,返回步骤2 ;服务端服务提供模块将请求数据返回给客户端页面,客户端数据缓存模块将数据缓存入客户端数据库;如果判断为不进行显示刷新,则进入下一步骤;步骤7,根据客户端选择的功能指令,客户端native扩展模块调用移动应用系统相应功能。图3为本发明移动应用html和native交互方法的服务端服务提供流程图;图4为本发明移动应用html和native交互方法的客户端数据缓存流程图;图5为本发明移动应用html和native交互方法的使用客户端native功能流程图。如图3所示,本发明的移动应用html和native交互系统,其服务端服务提供模块进行如下操作步骤4. 1,如果是从服务端获取数据,服务端服务提供模块接收客户端发送过来的服务请求;步骤4. 2,判断是否有该服务,如果服务端没有该服务,则返回错误信息,并回到步骤4. I ;如果有服务,则进入下一步骤;步骤4. 3,判断是否服务已开放,如果服务未开放,则返回错误信息,并回到步骤4. I ;如果服务已开放,则进入下一步骤;步骤4. 4,将请求服务数据返回给客户端。如图4所示,本发明的移动应用html和native交互系统,其客户端数据缓存模块进行如下操作步骤4. 5,客户端数据缓存模块从客户端数据库获取数据;步骤4. 6,判断缓存数据是否已失效(过期),如果已失效,则返回空数据;步骤4. 7,如果未失效,则返回数据。步骤5. 1,客户端数据缓存模块将从服务端获取到的数据存入客户端数据库;步骤5. 2,判断缓存数据是否已存在,如果存在,则不缓存;步骤5. 3,如果不存在,则缓存。如图5所示,本发明的移动应用html和native交互系统,其使用客户端native扩展模块进行如下操作步骤6. 1,选择使用移动应用系统功能;步骤6. 2,如果调用失败,则显示错误信息,并返回步骤6. I ;步骤6. 3,如果调用成功,则实现相应功能。
权利要求
1.一种移动应用html和native父互系统,其特征在于所述系统包括客户端服务端交互模块,客户端数据缓存模块,客户端native扩展模块,服务端服务提供模块。
2.根据权利要求I所述的交互系统,其中 所述客户端服务端交互模块是在webkit引擎浏览器中,使用dwr操作数据的方式来连接服务端获取数据;在服务端,将要提供的服务通过xml文件的方式进行配置,在客户端,通过javascript的方式调用服务端所提供的服务; 所述客户端数据缓存模块将用户访问的数据缓存于客户端本地数据库,用户在首次访问之后,后续都默认从客户端本地数据库中获取数据,只有当用户显式的刷新时才会从服务端重新获取数据; 所述客户端native扩展模块可以调用移动应用系统本身的功能; 所述服务端服务提供模块提供了客户端所要调用的服务。
3.根据权利要求2所述的交互系统,其中所述客户端数据缓存模块,在缓存过程中,首先判断之前是否有相同数据,若有,则不缓存,若没有,则缓存。在获取数据过程中,对数据有失效时间判断,若已过失效时间,则无法获取数据,若未过失效时间,则返回数据给页面。
4.根据权利要求2所述的交互系统,其中所述客户端native扩展模块可以调用移动应用系统本身的功能,该功能包括定位功能,在客户端页面有相应入口,通过MskyGap框架,调用系统硬件模块,获取手机所处位置的经纬度,再调用服务端的地图功能,在客户端页面显示所处位置的地图; 所述服务端服务提供模块提供了客户端所要调用的服务,但该服务不能被客户端直接调用,需要通过配置文件的方式开放调用接口。
5.一种移动应用html和native交互方法,其特征在于所述方法包括如下步骤 步骤1,打开客户端页面,判断是否首次访问; 步骤2,如果是首次访问,客户端服务端交互模块向服务端提交获取数据请求,从服务端获取数据; 步骤3,如果不是首次访问,则从客户端获取数据; 步骤4,判断是否获取数据成功,如果否,则返回步骤I ; 步骤5,如果在步骤4中判断为获取数据成功,客户端数据缓存模块将数据缓存入客户端数据库,并在客户端页面显示数据; 步骤6,根据客户端指令,判断是否进行显式刷新,如果是,则客户端服务端交互模块会再次向服务端提交获取数据请求,返回步骤2 ;服务端服务提供模块将请求数据返回给客户端页面,客户端数据缓存模块将数据缓存入客户端数据库;如果判断为不进行显示刷新,则进入下一步骤; 步骤7,根据客户端选择的功能指令,客户端native扩展模块调用移动应用系统相应功能。
6.根据权利要求5所述的方法,其中在所述步骤2中,是在webkit引擎浏览器中用javascript异步调用的方式调用服务端开放给客户端的接口,并获取数据。
7.根据权利要求5所述的方法,其中所述步骤4还包括 步骤4. 1,如果是从服务端获取数据,服务端服务提供模块接收客户端发送过来的服务请求;步骤4. 2,判断是否有该服务,如果服务端没有该服务,则返回错误信息,并回到步骤·4.I ;如果有服务,则进入下一步骤; 步骤4. 3,判断是否服务已开放给客户端,如果服务未开放,则返回错误信息,并回到步骤4. I ;如果服务已开放,则进入下一步骤; 步骤4. 4,将请求服务数据返回给客户端。
步骤4. 5,客户端数据缓存模块从客户端数据库获取数据; 步骤4. 6,判断缓存数据是否已失效(过期),如果已失效,则返回空数据; 步骤4. 7,如果未失效,则返回数据。
8.根据权利要求5所述的方法,其中所述步骤5还包括 步骤5. 1,客户端数据缓存模块将从服务端获取到的数据存入客户端数据库; 步骤5. 2,判断缓存数据是否已存在,如果存在,则不缓存; 步骤5. 3,如果不存在,则缓存。
9.根据权利要求5所述的方法,其中所述步骤6还包括 步骤6. 1,选择使用移动应用系统功能; 步骤6. 2,如果调用失败,则显示错误信息,并返回步骤6. I ; 步骤6. 3,如果调用成功,则实现相应功能。
10.根据权利要求5所述的方法,其中在所述步骤,首先判断移动应用系统是否有相应功能,如果没有,则返回错误信息,如果有,则展现实际效果。
全文摘要
一种移动应用html和native交互系统,其特征在于所述系统包括客户端服务端交互模块,客户端数据缓存模块,客户端native扩展模块,服务端服务提供模块。所述客户端服务端交互模块是在webkit引擎浏览器中,使用dwr操作数据的方式来连接服务端获取数据;在服务端,将要提供的服务通过xml文件的方式进行配置,在客户端,通过javascript的方式调用服务端所提供的服务;所述客户端数据缓存模块将用户访问的数据缓存于客户端本地数据库,用户在首次访问之后,后续都默认从客户端本地数据库中获取数据,只有当用户显式的刷新时才会从服务端重新获取数据;所述客户端native扩展模块可以调用移动应用系统本身的功能;所述服务端服务提供模块提供了客户端所要调用的服务。
文档编号G06F9/46GK102622266SQ201210032020
公开日2012年8月1日 申请日期2012年2月14日 优先权日2012年2月14日
发明者佟业新, 唐红武, 李长杰, 薄满辉, 高栋 申请人:中国民航信息网络股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1