应用调用的方法及操作系统、浏览器与流程

文档序号:11965483阅读:294来源:国知局
应用调用的方法及操作系统、浏览器与流程
本发明涉及通信技术,尤其涉及一种应用调用的方法及操作系统、浏览器。

背景技术:
原生应用即本地应用(Native应用),指的是针对特定操作系统的开发接口和所支持的开发语言开发的本地应用,其中,特定操作系统可以是Android操作系统。Native应用依附于操作系统的平台层,能够提供极佳的性能和用户体验,如可以提供优质华丽的用户界面和流畅的交互;Native应用可以灵活调用终端设备能力和访问本地资源,因此可以实现更为复杂的应用功能;由于Native应用程序本身和运行数据大部分在本地,因此可以方便地支持在线和离线功能,节省流量。然而,Native应用存在如下缺点:不同平台的开发标准和接口不同,需要针对具体平台进行开发,Native应用的平台移植和多个平台版本的维护需要花费大量的人力和时间成本;不同平台的功能和实现方式迥异,在不同平台中的用户体验可能存在差异;功能升级可导致频繁的下载和安装,增加流量并影响用户体验。Web应用是指使用浏览器(如IE浏览器)支持的语言开发的、运行于标准浏览器和网络之上的、为用户完成一个或多个特定功能的应用。随着互联网Web技术的发展,Web应用的种类和数量越来越多。与上述的Native应用相比,Web应用具有如下的优点:突出的跨平台、跨终端和跨浏览器特性,一次编码到处运行,极大地降低开发和维护成本;运行在浏览器中,不需要安装客户端程序,功能升级方便;数据主要保存在服务器,更为安全可靠。但是,Web应用也存在如下缺点:受限于浏览器和开发语言,目前的性能和用户体验尚有待提升;对离线功能的支持不足,网络中断时应用可能无法使用;或者对硬件资源的调用能力不足,导致应用功能受限等。综上,Native应用和Web应用各有优缺点,两者都支持各自应用间的类型丰富的数据交互,但是目前两者不能互相兼容,使得Native应用无法调用Web应用。

技术实现要素:
有鉴于此,本发明提供一种应用调用的方法及操作系统、浏览器,用于解决现有技术中Native应用无法调用Web应用的问题。第一方面,本发明实施例提供一种应用调用的方法,包括:操作系统接收请求方原生应用发送的服务发现请求,根据所述服务发现请求查找能够处理该服务发现请求的服务方原生应用和服务方Web应用,并呈现所述查找到的服务方原生应用和服务方Web应用;在确定用户根据所述呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用时,向浏览器发送应用调用请求,所述应用调用请求包括所选择的Web应用的地址,以使所述浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的服务方Web应用。结合第一方面,在第一种可能的实现方式中,所述服务发现请求包括:服务类别;所述根据所述服务发现请求查找能够处理该服务发现请求的服务方原生应用和服务方Web应用,具体包括:根据所述服务类别查找能够处理该服务发现请求的服务方原生应用和服务方Web应用。结合第一方面以及上述可能的实现方式,在第二种可能的实现方式中,所述服务发现请求包括:服务类别和数据类型;所述根据所述服务发现请求查找能够处理该服务发现请求的服务方原生应用和服务方Web应用,具体包括:根据所述服务类别和数据类型查找能够处理该服务发现请求的服务方原生应用和服务方Web应用。结合第一方面以及上述可能的实现方式,在第三种可能的实现方式中,所述服务发现请求包括:服务类别、数据类型和待处理的数据;所述根据所述服务发现请求查找能够处理该服务发现请求的服务方原生应用和服务方Web应用,具体包括:根据所述服务类别和数据类型查找能够处理所述待处理的数据的服务方原生应用和服务方Web应用;其中,所述应用调用请求包括所选择的Web应用的地址,以使所述浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的服务方Web应用,具体包括:所述应用调用请求包括所选择的Web应用的地址和所述待处理的数据,以使所述浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的服务方Web应用,并将所述待处理的数据发送给所打开的服务方Web应用进行处理。结合第一方面以及上述可能的实现方式,在第四种可能的实现方式中,所述操作系统接收请求方原生应用发送的服务发现请求之前,应用调用的方法进一步包括:所述操作系统接收所述浏览器发送的服务方Web应用的注册请求,所述注册请求包括:服务方Web应用的信息;所述操作系统根据所述Web应用的信息编辑所述操作系统中所述浏览器的注册信息,以使所述服务方Web应用能够被所述操作系统查找。结合第一方面以及上述可能的实现方式,在第五种可能的实现方式中,所述操作系统接收请求方原生应用发送的服务发现请求之前,应用调用的方法进一步包括:所述操作系统接收所述浏览器发送的服务方Web应用的注册请求,所述注册请求包括:服务方Web应用的信息;所述操作系统根据所述服务方Web应用的信息生成与所述服务方Web应用对应的Web应用关联程序的安装文件,并执行所述安装文件,得到在操作系统中注册的Web应用关联程序。结合第一方面以及上述可能的实现方式,在第六种可能的实现方式中,所述根据所述服务发现请求查找能够处理该服务发现请求的服务方原生应用和服务方Web应用,具体包括:根据所述服务发现请求在所述操作系统中查找能够处理该服务发现请求的服务方原生应用和所述服务方Web应用对应的Web应用关联程序;其中,呈现所查找到的服务方原生应用和服务方Web应用,具体包括:呈现所查找到的服务方原生应用和所述服务方Web应用对应的Web应用关联程序;其中,在确定用户根据所述呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用时,向浏览器发送应用调用请求,所述应用调用请求包括所选择的Web应用的地址,具体包括:在确定用户根据所述呈现的服务方原生应用和所述服务方Web应用对应的Web应用关联程序所选择的应用为所述服务方Web应用对应的Web应用关联程序时,运行所述服务方Web应用对应的Web应用关联程序,所述服务方Web应用对应的Web应用关联程序向浏览器发送所述应用调用请求,所述应用调用请求包括所述服务方Web应用对应的Web应用关联程序对应的所述服务方Web应用的地址。结合第一方面以及上述可能的实现方式,在第七种可能的实现方式中,所述操作系统根据所述服务方Web应用的信息生成与所述服务方Web应用对应的Web应用关联程序的安装文件,包括:根据所述服务方Web应用的信息生成所述Web应用关联程序的源文件,对所述源文件进行编译,将编译后的源文件编码转换成在所述操作系统中能够执行的字节码,将所述字节码打包成Web应用关联程序的安装文件,执行所述安装文件,得到在操作系统中注册的与所述服务方Web应用对应的Web应用关联程序。结合第一方面以及上述可能的实现方式,在第八种可能的实现方式中,所述操作系统接收请求方原生应用发送的服务发现请求之前,进一步包括:所述操作系统接收所述浏览器发送的服务方Web应用的注册请求,所述注册请求包括:服务方Web应用的信息;所述操作系统将所述服务方Web应用的信息发送至网络侧服务器,以使所述网络侧服务器根据所述服务方Web应用的信息生成与所述服务方Web应用对应的Web应用关联程序的安装文件;所述操作系统接收所述网络侧服务器发送的所述Web应用关联程序的安装文件,执行所述Web应用关联程序的安装文件,得到在操作系统中注册的Web应用关联程序;或者,所述操作系统从所述网络侧服务器下载所述Web应用关联程序的安装文件,执行所述下载的Web应用关联程序的安装文件,得到在操作系统中注册的Web应用关联程序。第二方面,本发明实施例提供一种操作系统,包括:原生应用调用模块,用于接收请求方原生应用发送的服务发现请求,根据所述服务发现请求查找能够处理该服务发现请求的服务方原生应用和服务方Web应用,并呈现所述查找到的服务方原生应用和服务方Web应用;在确定用户根据所述呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用中的Web应用时,向浏览器发送应用调用请求,所述应用调用请求包括所选择的Web应用的地址,以使所述浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的Web应用。结合第二方面,在第一种可能的实现方式中,所述服务发现请求包括:服务类别和数据类型时,所述原生应用调用模块具体用于根据所述服务类别和数据类型查找能够处理该服务发现请求的服务方原生应用和服务方Web应用。结合第二方面及上述可能的实现方式中,在第二种可能的实现方式中,操作系统进一步包括:Web应用注册模块,用于接收所述浏览器发送的服务方Web应用的注册请求,所述注册请求包括:服务方Web应用的信息;根据所述服务方Web应用的信息编辑操作系统中所述浏览器的注册信息,以使所述服务方Web应用能够被所述操作系统查找。结合第二方面及上述可能的实现方式中,在第三种可能的实现方式中,操作系统进一步包括:Web应用注册模块,用于接收所述浏览器发送的服务方Web应用的注册请求,所述注册请求包括:服务方Web应用的信息;根据所述服务方Web应用的信息生成与所述服务方Web应用对应的Web应用程序的安装文件,并执行所述安装文件,得到服务方Web应用在操作系统中注册的Web应用关联程序。第三方面,本发明实施例提供一种浏览器,包括:Web应用调用模块,用于在用户根据呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用中的Web应用以处理请求方原生应用发送的服务发现请求时,接收操作系统发送的应用调用请求,所述应用调用请求包括:所选择的Web应用的地址;根据所选择的Web应用的地址打开所选择的Web应用的地址对应的服务方Web应用。结合第三方面,在第一种可能的实现方式中,浏览器还包括:Web应用安装模块,用于向操作系统发送服务方Web应用的注册请求,所述注册请求包括:服务方Web应用的信息,以使所述操作系统根据所述服务方Web应用的信息编辑所述操作系统中的所述浏览器的注册信息,或者根据所述Web应用信息生成能够安装于所述操作系统中的Web应用关联程序。第四方面,本发明实施例提供的终端,包括,上述任一所述的操作系统和任一所述的浏览器,所述操作系统和所述浏览器通信。由上述技术方案可知,本发明的应用调用的方法及操作系统、浏览器,通过操作系统接收请求方原生应用发送的服务发现请求,进而查找能够处理服务发现请求的服务方原生应用和服务方Web应用,并呈现所述查找到的服务方原生应用和服务方Web应用,在确定用户根据所述呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用时,向浏览器发送包括所选择的Web应用的地址的应用调用请求,以使所述浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的服务方Web应用,从而可以实现请求方的原生应用即Native应用对Web应用的调用。附图说明为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作一简单地介绍,显而易见地:下面附图只是本发明的一些实施例的附图,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得同样能实现本发明技术方案的其它附图。图1为本发明一实施例提供的通信系统的结构示意图;图2A为本发明一实施例提供的应用调用的方法的流程示意图;图2B为本发明另一实施例提供的应用调用的方法的流程示意图;图2C为本发明另一实施例提供的应用调用的方法的流程示意图;图3为本发明另一实施例提供的应用调用的方法的流程示意图;图4为本发明另一实施例提供的应用调用的方法的流程示意图;图5为本发明另一实施例提供的应用调用的方法的流程示意图;图6为本发明另一实施例提供的应用调用的方法的流程示意图;图7为本发明另一实施例提供的操作系统的结构示意图;图8为本发明另一实施例提供的操作系统的结构示意图;图9为本发明另一实施例提供的浏览器的结构示意图;图10为本发明另一实施例提供的浏览器的结构示意图;图11为本发明另一实施例提供的终端的结构示意图;图12为本发明另一实施例提供的终端的结构示意图。具体实施方式为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明的技术方案进行清楚、完整地描述。显然,下述的各个实施例都只是本发明一部分的实施例。基于本发明下述的各个实施例,本领域普通技术人员即使没有作出创造性劳动,也可以通过等效变换部分甚至全部的技术特征,而获得能够解决本发明技术问题,实现本发明技术效果的其它实施例,而这些变换而来的各个实施例显然并不脱离本发明所公开的范围。当前,Android应用(安卓应用)主要包括四种类型的组件:Activity组件(活动组件)、Broadcast组件(广播组件)、Service组件(服务组件)、ContentProvider组件(内容提供方组件);这些组件自身具有独立性,组件和组件之间可以互相调用,协调工作,最终组成完整的Android应用。Android应用的组件和组件之间的通信主要是通过AndroidIntents(安卓“意图”)完成,AndroidIntents提供了一种在相同或不同Android应用的各类组件代码之间进行晚绑定(LateBinding)的机制。AndroidIntents是一消息对象,通过该消息对象对Android应用的一次操作的动作和一次操作的动作涉及的数据等进行描述,Android操作系统将根据此消息对象的属性信息,找到该消息对象并将该消息对象传递给能够对该消息对象进行处理的一个或多个Android应用组件,以完成Android应用组件的调用。因此,AndroidIntents实际起着通信中介的作用,专门提供组件互相调用的相关信息,实现调用方与被调用方之间的解耦。针对Android应用,在应用开发过程中,可以通过如下方式传递AndroidIntents和调用不同类型的Android应用组件。具体地,可以通过Content.startActivity()方法或Activity.startActivityForResult()方法向Android操作系统抛出AndroidIntents,以触发运行Android应用组件或调用已在运行的Android应用组件。特别地,如果通过Activity.startActivityForResult()方法启动Activity组件,可以在启动的Activity组件中通过调用Activity.setResult()方法设置结果参数,该结果参数可以在触发方Activity中通过onActivityResult()方法接收。通过Context.startService()方法可以启动一个Service组件或者向运行中的Service组件传递新的指令。还可以通过Context.bindService()方法绑定一个Service组件,以在调用组件和目标Service组件之间建立一个连接。通过Context.sendBroadcast()方法、Context.sendOrderedBroadcast()方法和Context.sendStickyBroadcast()方法中的任何一种抛出的AndroidIntents广播,将会被所有注册了相应AndroidIntents的广播接收器的应用接收。WebIntents提供了一种客户端侧的Web应用集成的机制,支持Web应用之间进行类型复杂的数据(如二进制文件)交互。WebIntents的整个生命周期包括注册、调用、选择、提交和响应五个阶段,各步骤异步执行,响应结果通过异步回调获取。Web应用可以按如下方式注册WebIntents:其中,“action”表明该Web应用的处理行为类型,目前定义的标准动作包括Discover(发现)、Share(分享)、Edit(编辑)、View(查找)、Pick(选择)、Subscribe(订阅)和Save(保存)等,用户也可以自定义WebIntent的行为;“type”表明Web应用支持处理的数据类型;“href”用来指定“action”网页的具体位置,以允许同一服务提供方提供多个Web应用服务;“disposition”用于指定Web应用的调用方式。在网页中,可以通过如下方法调用注册了上述WebIntents的Web应用:调用方网页通过startActivity()方法将WebIntents对象通过浏览器传递给上述Web应用,Web应用可以通过调用对象的postResult()和postFailure()方法写入处理结果,调用方网页则可通过onSuccess()和onFailure()回调函数获取Web应用的响应。本发明实施例可通过提供Native应用和Web应用相互通信的机制,使得Native应用能够发现和调用Web应用,使得用户在使用Native应用的过程中,可以通过所使用Native应用调用Web应用的方式,获得所使用的Native应用不具备的功能。例如:某Native应用具备图像浏览功能但不具备图像编辑功能,如果用户在使用上述Native应用的过程中需要对图片进行处理,则可以通过点击上述Native应用提供的按钮触发服务发现过程,查找并选择适合的服务方Web应用对图片进行处理,并从所选择的服务方Web应用获取编辑后的图片。通过本发明实施例提供的通信机制,用户可以通过所使用的Native应用,不仅可以调用其它Native应用,还可以调用服务方Web应用对各类的需求进行处理,通过所使用的Native应用来调用服务方Web应用的这种方式可以充分利用网络中种类繁多、功能丰富的Web应用,开发者在开发上述用户所使用的Native应用时,也可以聚焦Native应用自身的核心功能开发,而通过调用其它Native应用和服务方Web应用的方式获取其它应用功能,以降低开发的工作量和缩短开发周期。在本发明实施例中,原生应用指的是针对终端的操作系统的开发接口和开发语言开发的本地应用,一般安装在终端的操作系统中,安装的原生应用需要在操作系统中注册所提供的服务类别和支持处理的数据类型等信息,每个原生应用支持的服务类别和数据类型可能有多种,其中,服务类别可以是分享、查看、编辑、发送和拨号等,数据类型可以是任意的MIME,MultipurposeInternetMailExtensions多用途互联网邮件扩展文件类型。特别地,操作系统中可以安装多个原生应用,以供用户使用。浏览器属于原生应用中的一种。服务方Web应用可以是任意的提供特定信息或服务的网站;当前的终端包括:操作系统和浏览器,浏览器一般安装在操作系统中,通过浏览器可以发现和调用Web应用;操作系统一般运行于终端上,终端和网站通过网络相连。图1示出了本发明一实施例提供的通信系统的结构示意图,如图1所示,本实施例中的通信系统包括终端和服务器,终端通过通信网络与网络侧的服务器进行通信。其中,图1中的终端可包括浏览器和操作系统,以及连接操作系统的请求方原生应用和服务方原生应用。另外,终端还包括图1中未示出的处理器,该处理器连接浏览器和操作系统。该处的浏览器和操作系统均运行于处理器中。图1中的服务器包括服务方Web应用,上述的通信网络可以是有线通信网络,也可以是无线通信网络。图1中网络侧仅示出一个服务器,在实际应用中,网络侧可以包括多个独立的服务器,这些服务器中均包括多个服务方Web应用。在本实施例中终端可以通过通信网络调用服务方Web应用处理终端内请求方原生应用的服务发现请求,进而解决了现有技术中Native应用无法调用Web应用的问题,使得用户在使用Native应用的过程中,可以通过所使用Native应用调用Web应用的方式,获得所使用的Native应用不具备的功能。图2A示出了本发明一实施例提供的应用调用的方法的流程示意图;结合图1和图2A所示,本实施例中的应用调用的方法如下文所述。201、操作系统接收请求方原生应用(即Native应用)发送的服务发现请求,根据服务发现请求查找能够处理该服务发现请求的服务方原生应用和服务方Web应用,并呈现所述查找到的服务方原生应用和服务方Web应用。202、在确定用户根据呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用时,向浏览器发送应用调用请求,所述应用调用请求包括所选择的Web应用的地址,以使浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的服务方Web应用。由上述实施例可知,本实施例的应用调用的方法,解决了现有技术中Native应用无法调用Web应用的问题。举例来说,当前的Android操作系统中,一种可选的应用场景为,步骤201中的服务发现请求可包括:服务类别,相应地,步骤201可为如下的图中未示出的步骤201’:操作系统接收请求方原生应用发送的服务发现请求,服务发现请求包括:服务类别,根据所述服务类别查找能够处理该服务发现请求的服务方原生应用和服务方Web应用,并呈现所述查找到的服务方原生应用和服务方Web应用。另一种可选的应用场景为:上述步骤201中的服务发现请求可包括:服务类别和数据类型,此时步骤201可为如下的201”(图中未示出):201”、操作系统接收请求方原生应用发送的服务发现请求,所述服务发现请求包括:服务类别和数据类型;根据服务类别和数据类型查找能够处理该服务发现请求的服务方原生应用和服务方Web应用,并呈现所述查找到的服务方原生应用和服务方Web应用。在第三种可选的应用场景中,上述步骤201’中的服务发现请求也可进一步包括:待处理的数据,此时,所述步骤202可具体包括:在确定用户根据呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用时,向浏览器发送应用调用请求,所述应用调用请求包括所选择的Web应用的地址和所述待处理的数据,以使浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的服务方Web应用,并将所述待处理的数据发送给所打开的服务方Web应用进行处理。本实施例中的应用调用的方法,实现了原生应用和Web应用之间的通信,当操作系统接收到请求方原生应用发出的服务发现请求后,操作系统在服务发现的过程中,不仅可以找出满足请求方原生应用的服务发现请求的服务方原生应用,还可以找出能够处理请求方原生应用的服务发现请求的服务方Web应用,让用户可以有更多的应用选择。当然,在另一优选实施例中,上述步骤201中的服务发现请求还可包括:服务类别、数据类型和待处理的数据,此时,如图2B所示,上述的步骤201可为如下的步骤201a:201a、操作系统接收请求方原生应用发送的服务发现请求,所述服务发现请求包括:服务类别、数据类型和待处理的数据,根据服务类别和数据类型查找能够处理所述待处理的数据的服务方原生应用和服务方Web应用,并呈现所述查找到的服务方原生应用和服务方Web应用。相应地,上述的步骤202可为如下步骤202a:202a、在确定用户根据所述呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用时,向浏览器发送应用调用请求,应用调用请求包括选择的Web应用的地址和待处理的数据,以使浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的服务方Web应用,并将所述待处理的数据发送给所述打开的服务方Web应用进行处理。在本实施例中,上述的服务类别可以包括:分享、查看和编辑等。数据类型可为任意的MIME多媒体文件类型。当然,在其他实施例中,服务发现请求还可以包括:服务类别、数据类型和待处理的数据存储标识等。此时,待处理的数据存储标识对应的数据可以是复杂数据,如二进制文件,图片等。在上述步骤202或者202a中,若用户选择的应用是服务方原生应用,则采用现有的方式进行处理,如可直接打开所选择的服务方原生应用,进一步地,还可以使得打开的服务方原生应用对上述待处理的数据进行处理。可以理解的是,在步骤202a中,如果用户选择的是在操作系统中注册的服务方Web应用,则操作系统将服务方Web应用的地址和需要处理的数据发送给浏览器,浏览器根据上述服务方Web应用的地址打开对应的服务方Web应用,并将上述待处理的数据发送给服务方Web应用。举例来说,请求方原生应用可以将待处理的数据发送至操作系统,操作系统将待处理的数据发送至浏览器,以使浏览器将待处理的数据发送至用户选择的在操作系统中注册的服务方Web应用,进而可以使得打开的服务方Web应用进行处理。以Android系统为例,通过操作系统,请求方原生应用可以使用如下方法向浏览器发送数据:Intentintent=newIntent(this,dest.calss);intent.putExtra(payload);startActivityForResult(intent,RequestCode);并通过onActivityResult(intrequestCode,intresultCode,Intentdata)回调函数接收服务方Web应用的响应,处理结果数据包含在data对象中。在实际应用中,如图2C所示,上述的应用调用方法还包括如下的步骤203。203、操作系统接收浏览器发送的服务方Web应用的处理结果,并将所述处理结果发送给所述请求方原生应用。需要说明的是,上述的图2A和图2B均可包括该处的步骤203,本实施例仅为举例说明。当然,任一实施例中采用服务方Web应用进行相关数据的处理之后,均需接收浏览器发送的服务方Web应用的处理结果。在具体实施过程中,在浏览器中打开的服务方Web应用处理完成之后,浏览器则可以通过如下方法将处理结果返回:Intentdata=newIntent();data.putExtra(payload);setResult(ResultCode,data);本实施例中的应用调用的方法,实现了原生应用和Web应用之间的通信,当操作系统接收到请求方原生应用发出的服务发现请求后,操作系统在服务发现的过程中,不仅可以找出满足请求方原生应用的服务发现请求的服务方原生应用,还可以找出能够处理请求方原生应用的服务发现请求的服务方Web应用,让用户可以有更多的应用选择。进一步地,原生应用开发者可以通过灵活调用已安装的原生应用或网络上已存在的服务方Web应用实现丰富的功能,从而降低开发者的工作量,缩短开发周期。图3示出了本发明一实施例提供的应用调用方法的流程示意图,如图3所示,本发明实施例中的应用调用方法如下所述。301、操作系统接收浏览器发送的服务方Web应用的注册请求,所述注册请求包括:服务方Web应用的信息。举例来说,服务方Web应用信息包括:服务方Web应用的地址;或者,服务方Web应用的信息包括:服务方Web应用的地址,以及还包括如下信息中的一种或多种:服务方Web应用的服务类别、服务方Web应用所处理的数据类型、服务方Web应用的名称和服务方Web应用的图标等。302、操作系统根据服务方Web应用的信息编辑操作系统中浏览器的注册信息,以使服务方Web应用能够被操作系统查找。举例来说,操作系统在根据服务发现请求进行应用查找时,如果上述服务方Web应用在浏览器的注册信息中携带的服务类别和数据类型与上述服务发现请求中的服务类型和数据类型匹配,则可认为能够对上述服务发现请求进行处理,则浏览器将对上述的服务发现请求进行响应。或者,在一种可能的实现方式中,操作系统在根据服务发现请求进行应用查找时,如果上述服务方Web应用在浏览器的注册信息中携带的服务类别与上述服务发现请求中的服务类别匹配,则可认为能够对上述服务发现请求进行处理,则浏览器将对上述的服务发现请求进行响应。在本实施例中,可以理解的是,浏览器的注册信息中携带服务方Web应用的信息,如服务方Web应用地址。在其他实施例中,浏览器的注册信息中还可携带服务方Web应用的信息,如服务方Web应用的地址及以下信息中的一种或多种:服务方Web应用的服务类别、服务方Web应用处理的数据类型和服务方Web应用的名称等。303、操作系统接收请求方原生应用发送的服务发现请求,根据服务发现请求查找能够处理该服务发现请求的服务方原生应用和服务方Web应用,并呈现所述查找到的服务方原生应用和服务方Web应用。需要说明的是,由于浏览器的注册信息携带有服务方Web应用的信息。由此,操作系统在内部包括所有原生应用的注册信息和浏览器的注册信息的注册模块/注册表中进行查找,进而可以查找能够处理该服务发现请求的服务方原生应用和服务方Web应用。上述步骤303中的服务发现请求可以包括服务类别,或者可以包括:服务类别和数据类型,或者可以包括:服务类别和待处理的数据,或者可以包括服务类别、数据类型和待处理的数据等,本实施例不对其进行限定。进一步地,在查找到两个或两个以上的能够处理请求方原生应用的服务发现请求的应用时,即查找到多个服务方原生应用和多个服务方Web应用时,操作系统可以将服务方原生应用和服务方Web应用呈现给用户,供用户选择。例如,操作系统向用户呈现一列表,该列表中显示查找到的服务方原生应用和服务方Web应用;可选地,列表中显示查找到的服务方原生应用的图标和服务方Web应用的图标等,本实施例不对上述列表中显示内容进行限定。304、在确定用户根据所述呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用时,向浏览器发送应用调用请求,应用调用请求包括所选择的Web应用的地址,以使浏览器根据选择的Web应用的地址打开所选择的Web应用的地址对应的服务方Web应用。或者,在上述步骤303中的服务发现请求中包括待处理的数据时,该步骤304可具体为:在确定用户根据所述呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用时,向浏览器发送应用调用请求,应用调用请求包括选择的Web应用的地址和待处理的数据,以使浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的服务方Web应用,并将所述待处理的数据发送给所述打开的服务方Web应用进行处理。本实施例中的应用调用方法,解决了原生应用发现和调用Web应用的问题,使得用户在使用原生应用的过程中,可以有更多的选择权,如可以自由选择合适的服务方原生应用或服务方Web应用来处理服务发现请求,进而可以充分利用网络中种类繁多、功能丰富的服务方Web应用。图4示出了本发明另一实施例提供的应用调用方法的流程示意图,如图4所示,本发明实施例中的应用调用方法如下文所述。401、操作系统接收所述浏览器发送的服务方Web应用的注册请求,所述注册请求包括:服务方Web应用的信息。402、操作系统根据所述服务方Web应用的信息生成与服务方Web应用对应的Web应用关联程序的安装文件,并执行所述安装文件,得到服务方Web应用在操作系统中注册的Web应用关联程序。可以理解的是,在操作系统中注册有Web应用关联程序时,可以运行所述Web应用关联程序以通过所述浏览器打开所述服务方Web应用,所述操作系统可以通过所述运行中的Web应用关联程序调用所述服务方Web应用。在本实施例中,用户若选择Web应用关联程序处理服务发现请求,则操作系统可用过浏览器将待处理数据发送给Web应用关联程序,例如,Web应用关联程序可调用浏览器打开该Web应用关联程序所对应的服务方Web应用,进而操作系统通过浏览器将上述待处理数据发送给服务方Web应用。举例来说,步骤402中的根据服务方Web应用的信息生成与所述服务方Web应用对应的Web应用关联程序的安装文件,可具体包括:根据服务方Web应用的信息生成所述Web应用关联程序的源文件,对源文件进行编译,将编译后的源文件编码转换成在操作系统中能够执行的字节码,将字节码打包成Web应用关联程序的安装文件,执行所述安装文件,得到在操作系统中注册的与所述服务方Web应用对应的Web应用关联程序。当然,实际应用中操作系统根据服务方Web应用的信息动态生成Web应用关联程序的源文件,并对源文件进行编译,将编译后的源文件编码转化成在操作系统中能够执行的字节码,并将字节码打包成类似原生应用程序的Web应用关联程序的安装文件,执行所述安装文件,得到在操作系统中注册的与所述服务方Web应用对应的Web应用关联程序。在其他实施例中,上述获取Web应用关联程序的方式可以如下所述:a)操作系统接收浏览器发送的服务方Web应用的注册请求,注册请求包括:服务方Web应用的信息;操作系统将服务方Web应用的信息发送至网络侧服务器,以使网络侧服务器根据服务方Web应用的信息生成与服务方Web应用对应的Web应用关联程序的安装文件;以及操作系统接收网络侧服务器发送的Web应用关联程序的安装文件,执行Web应用关联程序的安装文件,得到在操作系统中注册的与所述服务方Web应用对应的Web应用关联程序。在上述方式中,网络侧服务器可以实现根据服务方Web应用的信息动态生成Web应用关联程序的源文件,并对所述源文件进行编译,将编译后的源文件编码转化成在操作系统中能够执行的字节码,并将所述字节码打包成Web应用关联程序的安装文件,执行所述安装文件,得到在操作系统中注册的与所述服务方Web应用对应的Web应用关联程序。通过将生成Web应用关联程序的过程从操作系统移至网络侧服务器实现,可以简化操作系统的操作过程,并降低对用户终端的计算和存储能力的要求,节省了移动终端的耗电。b)操作系统接收浏览器发送的服务方Web应用的注册请求,注册请求包括:服务方Web应用的信息;操作系统将服务方Web应用的信息发送至网络侧服务器,以使网络侧服务器根据服务方Web应用的信息生成与服务方Web应用对应的Web应用关联程序的安装文件;以及操作系统从网络侧服务器下载Web应用关联程序的安装文件,并执行下载的Web应用关联程序的安装文件,得到在操作系统中注册的与所述服务方Web应用对应的Web应用关联程序。举例来说,网络侧服务器可以将生成的Web应用关联程序的安装文件的下载地址发送至操作系统,以使操作系统根据下载地址下载网络侧服务器生成的Web应用关联程序的安装文件。举例来说,Web应用关联程序在操作系统中安装后可以不显示桌面图标,在运行时也可以不显示用户界面,但可以通过操作系统的应用管理功能进行管理,如删除该Web应用关联程序等。403、操作系统接收请求方原生应用发送的服务发现请求。举例来说,服务发现请求可以包括:服务类别,或者可以包括:服务类别和数据类型,或者可以包括:服务类别和待处理的数据,或者可以包括服务类别、数据类型和待处理的数据等,本实施例不对其进行限定。404、根据所述服务发现请求在操作系统中查找能够处理该服务发现请求的服务方原生应用和服务方Web应用对应的Web应用关联程序,呈现所查找到的服务方原生应用和服务方Web应用对应的Web应用关联程序。举例来说,若服务发现请求中包括服务类别和数据类型,则步骤404可为根据服务发现请求中的服务类别和数据类型在操作系统中查找与服务类别和数据类型相匹配的注册服务类别和注册数据类型,获取注册服务类别和注册数据类型对应的服务方原生应用和Web应用关联程序,呈现所查找到的服务方原生应用和Web应用关联程序。相应地,所述服务方原生应用和服务方Web应用均在所述操作系统中注册有注册服务类别和注册数据类型。405、在确定用户根据所述呈现的服务方原生应用和服务方Web应用对应的Web应用关联程序所选择的应用为服务方Web应用对应的Web应用关联程序时,运行服务方Web应用对应的Web应用关联程序,服务方Web应用对应的Web应用关联程序向浏览器发送应用调用请求,所述应用调用请求包括服务方Web应用对应的Web应用关联程序对应的所述服务方Web应用的地址。由此,所述浏览器根据所述服务方Web应用的地址打开所述服务方Web应用。上述应用调用方法,解决了原生应用用于发现、调用服务方Web应用的问题,使得用户在使用原生应用的过程中,可以有更多的选择权,如可以自由选择合适的服务方原生应用或服务方Web应用来处理响应的请求,进而可以充分利用网络中种类繁多、功能丰富的服务方Web应用。当用户在浏览器中打开或安装任一服务方Web应用之后,如用户使用谷歌Chrome浏览器从ChromeWeb应用商店上下载并安装任一服务方Web应用后,或者用户通过任一浏览器和任一服务方Web应用的地址打开对应的服务方Web应用后,浏览器向操作系统发送服务方Web应用的注册请求,以触发操作系统注册该服务方Web应用,其中,服务方Web应用的注册请求中包含服务方Web应用的信息,服务方Web应用的信息包括:服务方Web应用的地址,还可以包括如下信息中的一种或多种:服务方Web应用的服务类别、服务方Web应用所处理的数据类型、服务方Web应用的名称、服务方Web应用的图标等。可选地,在服务方Web应用被打开或安装过程中,浏览器可以提供界面让用户选择是否触发操作系统注册上述的服务方Web应用,如果确认用户同意注册该服务方Web应用,则浏览器向操作系统发送服务方Web应用的注册请求,以触发操作系统注册该服务方Web应用,否则浏览器终止上述过程,不对操作系统发送服务方Web应用的注册请求。图5示出了本发明一实施例提供的应用调用方法的流程示意图,如图5所示,本发明实施例中的应用调用方法如下文所述。501、在用户根据呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用以处理请求方原生应用发送的服务发现请求时,浏览器接收操作系统发送的应用调用请求,应用调用请求包括:所选择的Web应用的地址。502、浏览器根据所选择的Web应用的地址打开选择的Web应用的地址对应的服务方Web应用。可选地,应用调用请求还可包括:Web应用的地址和待处理的数据,该处的待处理的数据可为请求方原生应用向操作系统发送的服务发现请求中的待处理的数据。相应地,上述的步骤502可为如下图中未示出的步骤502’:502’、浏览器根据服务方Web应用的地址打开所述服务方Web应用,并将上述待处理数据发送给所述服务方Web应用,以使服务方Web应用处理所述待处理的数据。优选地,如图6所示,在步骤501之前,本实施例中的应用调用方法还包括如下的步骤500:500、浏览器向操作系统发送服务方Web应用的注册请求,服务方Web应用的注册请求包括:服务方Web应用的信息,以使操作系统根据服务方Web应用的相息编辑操作系统中的浏览器的注册信息,或者根据服务方Web应用的信息生成能够安装于所述操作系统中的Web应用关联程序。在另一种实施场景中,上述应用调用方法还包括如下的图中未示出的步骤503:503、浏览器获取所述服务方Web应用的处理结果,并将处理结果发送与操作系统,具体地,通过所述操作系统将处理结果发送给上述的请求方原生应用。上述应用调用方法,通过浏览器接收打开服务方Web应用的应用调用请求,解决了原生应用用于发现、调用服务方Web应用的问题,使得用户在使用原生应用的过程中,可以有更多的选择权,如可以自由选择合适的服务方原生应用或服务方Web应用来处理响应的请求,进而可以充分利用网络中种类繁多、功能丰富的服务方Web应用。图7示出了本发明一实施例提供的操作系统的结构示意图,如图7所示,本发明实施例中的操作系统12包括:原生应用调用模块122,其中,原生应用调用模块,具体用于接收请求方原生应用13发送的服务发现请求,根据服务发现请求查找能够处理该服务发现请求的服务方原生应用14和服务方Web应用21,并呈现查找到的服务方原生应用14和服务方Web应用21;所述原生应用调用模块122在确定用户根据所述呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用时,向浏览器发送应用调用请求,所述应用调用请求包括所选择的Web应用的地址,以使所述浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的Web应用。在一种应用场景中,上述的服务发现请求可包括服务类别,此时,原生应用调用模块122可具体用于接收请求方原生应用发送的服务发现请求,根据所述服务发现请求中的服务类别查找能够处理该服务发现请求的服务方原生应用和服务方Web应用,并呈现所述查找到的服务方原生应用和服务方Web应用,以及在确定用户根据所述呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用时,向浏览器发送应用调用请求,所述应用调用请求包括所选择的Web应用的地址,以使所述浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的Web应用。在另一种应用场景中,上述的服务发现请求可包括服务类别和数据类型,此时,原生应用调用模块122可具体用于接收请求方原生应用发送的服务发现请求,根据所述服务发现请求中所述服务类别和数据类型查找能够处理该服务发现请求的服务方原生应用和服务方Web应用,并呈现所述查找到的服务方原生应用和服务方Web应用,以及在确定用户根据所述呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用时,向浏览器发送应用调用请求,所述应用调用请求包括所选择的Web应用的地址,以使所述浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的Web应用在第三种应用场景中,服务发现请求可进一步包括:待处理的数据,此时,原生应用调用模块122具体用于:接收请求方原生应用13发送的服务发现请求,根据服务发现请求查找能够处理该服务发现请求的服务方原生应用14和服务方Web应用,并呈现查找到的服务方原生应用14和服务方Web应用;在确定用户根据呈现的服务方原生应用14和服务方Web应用所选择的应用为服务方Web应用时,向浏览器11发送应用调用请求,应用调用请求包括所选择的Web应用的地址和所述待处理的数据,以使所述浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的Web应用,并将所述待处理的数据发送给所打开的服务方Web应用进行处理。需要说明的是,在第三种应用场景中,服务发现请求可以包括:服务类别和待处理的数据,或者,服务发现请求可以包括服务类别、数据类型和待处理的数据等。以Android操作系统为例,原生应用调用模块所接收的服务发现请求包括:服务类别、数据类型和待处理的数据,则原生应用调用模块具体用于:接收请求方原生应用13发送的服务发现请求,根据所述服务发现请求中的服务类别和数据类型查找能够处理所述待处理的数据的服务方原生应用和服务方Web应用,并呈现查找到的服务方原生应用14和服务方Web应用;所述原生应用调用模块在确定用户根据呈现的服务方原生应用14和服务方Web应用所选择的应用为服务方Web应用时,向浏览器11发送应用调用请求,所述应用调用请求包括所选择的Web应用的地址和所述待处理的数据,以使所述浏览器根据所选择的Web应用的地址打开所选择的Web应用的地址对应的服务方Web应用,并将所述待处理的数据发送给所打开的服务方Web应用进行处理。当然,实际应用中的原生应用调用模块122还用于接收浏览器11发送的服务方Web应用的处理结果。举例来说,原生应用调用模块122用于提供用户界面,向用户展示可以作为服务方原生应用和服务方Web应用的应用列表,列表中可以包含每项应用的应用名称、应用地址、应用图标等。相应地,原生应用调用模块122接收用户的选择结果,如服务方原生应用,根据用户选择的应用的地址,打开对应的服务方原生应用14,并将从服务发现请求中的待处理的数据发送给服务方原生应用14。如果用户选择的是在操作系统中注册的服务方Web应用,则原生应用调用模块122将服务方Web应用的地址和待处理的数据通过操作系统12发送给浏览器11。以Android系统为例,通过原生应用调用模块122,请求方原生应用可以使用如下方法向浏览器或其它服务方原生应用发送数据:Intentintent=newIntent(this,dest.calss);intent.putExtra(payload);startActivityForResult(intent,RequestCode);并通过onActivityResult(intrequestCode,intresultCode,Intentdata)回调函数接收响应,处理结果数据包含在data对象中。浏览器或其它服务方原生应用则可以通过如下方法将处理结果返回:Intentdata=newIntent();data.putExtra(payload);setResult(ResultCode,data);本实施例中的操作系统通过原生应用调用模块122接收请求方原生应用的服务发现请求,进而查找服务方原生应用和服务方Web应用,解决了原生应用用于发现、调用服务方Web应用的问题,使得用户在使用原生应用的过程中,可以有更多的选择权,如可以自由选择合适的服务方原生应用或服务方Web应用来处理响应的请求,进而可以充分利用网络中种类繁多、功能丰富的服务方Web应用。在另一可选的实施例中,如图8所示,本实施例中的操作系统进一步包括Web应用注册模块121,该Web应用注册模块121用于接收浏览器11发送的服务方Web应用的注册请求,所述注册请求包括:服务方Web应用的信息;所述Web应用注册模块121根据服务方Web应用的信息编辑操作系统中浏览器11的注册信息,以使所述浏览器11的注册信息中携带服务方Web应用的部分/全部信息,进而服务方Web应用能够被所述操作系统查找。上述的服务方Web应用的信息包括:服务方Web应用的地址;或者,服务方Web应用的信息包括:服务方Web应用的地址,还包括如下信息中的一种或多种:服务方Web应用的服务类别、服务方Web应用所处理的数据类型、服务方Web应用的名称等。也就是说,Web应用注册模块121根据接收到的服务方Web应用的地址、服务类别和数据类型对浏览器11的注册信息进行动态修改,使浏览器11的注册信息中携带服务方Web应用的服务类别,或者服务类别和数据类型,进而可以响应上述请求方原生应用所发送的服务发现请求。在另一应用场景中,Web应用注册模块121进一步用于接收所述浏览器发送的服务方Web应用的注册请求,注册请求包括:服务方Web应用的信息(如服务方Web应用的地址);根据服务方Web应用的信息生成与服务方Web应用对应的Web应用关联程序的安装文件,并执行所述安装文件,得到服务方Web应用在操作系统中注册的Web应用关联程序15(如图12所示)。具体地,上述Web应用注册模块121具体用于根据所述服务方Web应用的信息生成所述Web应用关联程序的源文件,对所述源文件进行编译,将编译后的源文件编码转换成在所述操作系统中能够执行的字节码,将所述字节码打包成Web应用关联程序的安装文件,执行所述安装文件,得到在操作系统中注册的与所述服务方Web应用对应的Web应用关联程序;优选地,根据Web应用的信息动态生成Web应用关联程序的源文件,并对源文件进行编译,将编译后的源文件编码转化成在操作系统中能够执行的字节码,并将字节码打包成Web应用程序的安装文件,执行所述安装文件,得到在操作系统中注册的与所述服务方Web应用对应的Web应用关联程序。在本实施例中,Web应用注册模块121是操作系统的一部分,该Web应用注册模块121根据接收到的服务方Web应用的服务类别、数据类型、应用地址、应用图标等,动态生成Web应用关联程序的各类源文件,并通过自带的编译环境对工程进行编译,将编译后的Web应用关联程序转化成可在操作系统中执行的字节码,并将字节码打包成Web应用关联程序的安装文件。此时,原生应用调用模块122具体用于:接收请求方原生应用发送的服务发现请求,根据所述服务发现请求在所述操作系统中查找能够处理该服务发现请求的服务方原生应用和所述服务方Web应用对应的Web应用关联程序;其中,呈现所查找到的服务方原生应用和所述服务方Web应用对应的Web应用关联程序;所述原生应用调用模块122在确定用户根据所述呈现的服务方原生应用和所述服务方Web应用对应的Web应用关联程序所选择的应用为所述服务方Web应用对应的Web应用关联程序时,运行所述服务方Web应用对应的Web应用关联程序,所述服务方Web应用对应的Web应用关联程序向浏览器发送所述应用调用请求,所述应用调用请求包括所述服务方Web应用对应的Web应用关联程序对应的所述服务方Web应用的地址。上述服务发现请求可以包括服务类别,或者服务类别和数据类型,或者服务类别和待处理的数据,或者服务类别、数据类型和待处理的数据等,本实施例不对其进行限定。在其他实施例中,上述的Web应用注册模块121还用于接收所述浏览器发送的服务方Web应用的注册请求,注册请求包括:服务方Web应用的信息;所述Web应用注册模块121将服务方Web应用的信息发送至网络侧服务器,以使网络侧服务器根据服务方Web应用的信息生成与服务方Web应用对应的Web应用关联程序的安装文件;所述Web应用注册模块121接收所述网络侧服务器发送的所述Web应用关联程序的安装文件,执行所述Web应用关联程序的安装文件,得到在操作系统中注册的Web应用关联程序;或者,所述操作系统从所述网络侧服务器下载所述Web应用关联程序的安装文件,执行所述下载的Web应用关联程序的安装文件,得到在操作系统中注册的Web应用关联程序。或者,上述的Web应用注册模块121还用于接收浏览器发送的服务方Web应用的注册请求,注册请求包括:服务方Web应用的信息;所述Web应用注册模块121将服务方Web应用的信息发送至网络侧服务器,以使网络侧服务器根据服务方Web应用的信息生成与服务方Web应用对应的Web应用关联程序的安装文件;所述Web应用注册模块121接收所述网络侧服务器发送的所述Web应用关联程序的安装文件,执行所述安装文件,得到服务方Web应用在操作系统中注册的与服务方Web应用对应的Web应用关联程序;或者,所述Web应用注册模块121从所述网络侧服务器下载所述Web应用关联程序的安装文件,并安装所述下载的Web应用关联程序的安装文件,得到服务方Web应用在操作系统中注册的与服务方Web应用对应的Web应用关联程序15,如图12所示。在该方案中,与Web应用关联程序15对应(如图12所示)的各类源文件的生成、编译、可执行程序转化和打包均在网络侧服务器上进行。上述方式可以使操作系统12不必提供各类源文件的生成、编译、可执行程序转化和打包等功能和环境,降低了对终端中计算和存储资源的占用,特别是对移动终端而言,可以节省耗电。本实施例中的操作系统通过Web应用注册模块121使服务方Web应用在操作系统中进行注册,进而原生应用调用模块122接收请求方原生应用的服务发现请求,并查找服务方原生应用和服务方Web应用,解决了原生应用用于发现、调用服务方Web应用的问题,使得用户在使用原生应用的过程中,可以有更多的选择权,如可以自由选择合适的服务方原生应用或服务方Web应用来处理响应的请求,进而可以充分利用网络中种类繁多、功能丰富的服务方Web应用。另一种应用场景中,Web应用注册模块本身即为一安装在操作系统中的原生应用,此时,Web应用注册模块可具有需要较高的系统权限,以实现Web应用程序的安装文件的生成、签名和打包。或者该应用本身即为一系统应用,自然具备Web应用程序的安装文件的生成、签名和打包所需要的权限。上述实施例的优点是可以简化对操作系统的更改,降低了系统实现对操作系统的依赖性。图9示出了本发明一实施例中的浏览器的结构示意图,如图9所示,本实施例中的浏览器包括:Web应用调用模块112,用于在用户根据呈现的服务方原生应用和服务方Web应用所选择的应用为服务方Web应用中的Web应用以处理请求方原生应用发送的服务发现请求时,接收操作系统发送的应用调用请求,所述应用调用请求包括:所选择的Web应用的地址;根据所选择的Web应用的地址打开所选择的Web应用的地址对应的服务方Web应用。在Android操作系统中,上述的应用调用请求可包括服务方Web应用的地址和待处理的数据,此时,Web应用调用模块112根据服务方Web应用的地址打开服务方Web应用的地址对应的服务方Web应用,以使服务方Web应用处理上述的数据,并将所述待处理的数据发送给所打开的服务方Web应用进行处理。可以理解的是,图9中的Web应用调用模块112接收原生应用调用模块122发送的服务方Web应用的地址和待处理的数据,根据服务方Web应用的地址打开对应的服务方Web应用,并将待处理的数据发送给上述服务方Web应用,并获取对上述数据的处理结果,再采用之前所述方法,如通过setResult()方法将处理结果返回给请求方原生应用。通过原生应用调用模块122和Web应用调用模块112间的上述通信方式,可以实现Web应用和原生应用之间复杂数据交互,进而实现两者的深度集成,原生应用开发者可以通过灵活调用已安装的原生应用或网络上已存在的Web应用实现丰富的功能,从而降低开发者的工作量,缩短开发周期。另一方面,也可以保持与已有操作系统的数据交互方式的一致性。进一步地,如图10所示,本实施例中的浏览器还包括:Web应用安装模块111,用于向操作系统发送服务方Web应用的注册请求,所述注册请求包括:服务方Web应用的信息,所述操作系统中的Web应用注册模块根据所述服务方Web应用的信息编辑所述操作系统中所述浏览器的注册信息,以使所述服务方Web应用能够被所述操作系统查找。或者,本实施例中的浏览器还包括:Web应用安装模块111,用于向操作系统发送服务方Web应用的注册请求,所述注册请求包括:服务方Web应用的信息,操作系统中的Web应用注册模块根据所述服务方Web应用的信息生成与所述服务方Web应用对应的Web应用关联程序的安装文件,并执行所述安装文件,得到在操作系统中注册的Web应用关联程序15(如图12所示)。也就是说,操作系统的Web应用注册模块121从浏览器的Web应用安装模块111接收所安装服务方Web应用的服务类别、数据类型和服务方Web应用的地址等,并根据上述参数和数据动态生成并安装与该服务方Web应用对应的Web应用关联程序的安装文件,执行所述安装文件,得到服务方Web应用在操作系统中注册的Web应用关联程序。举例来说,Web应用关联程序15安装后可以不显示桌面图标,在运行时也可以不显示用户界面,但可以通过操作系统的应用管理功能进行管理,如删除该Web应用关联程序等。以Android系统为例,由Web应用注册模块121生成的Web应用关联程序15应包含AndroidManifest.xml声明文件,并在其中声明包含对应服务方Web应用支持的服务类别、数据类型等参数的广播接收器,举例如下:声明了上述广播接收器的Web应用关联程序将对播放mpeg格式音乐的请求方原生应用的服务发现请求做出响应,当Web应用关联程序被触发后,则可以通过如下方式向对应的Web应用发送数据:Uriuri=Uri.parse(″http://www.url-shorter.com/service?url=***″);Intentintent=newIntent(Intent.ACTION_VIEW,uri);startActivity(intent);在本实施例中,如果需要传递图片或二进制文件等复杂数据内容,则可以通过Web应用关联程序15向Web应用传递数据对象的存储标识,如联系人名称,Web应用网页可以通过HTML5的DeviceAPI或FileAPI等方式获取具体的数据内容。采用本实施例的好处是不需对操作系统中浏览器的注册信息进行动态的修改,可以简化对操作系统功能的变更。根据本发明的另一方面,本发明还提供一种终端,其中,包括上述任一所述的操作系统和上述任一所述的浏览器,操作系统和所述浏览器通信。优选地,图11和图12分别示出一种终端的结构示意图,图12和图12中的终端均包括:浏览器11、操作系统12,以及连接操作系统12的请求方原生应用13、服务方原生应用14;本实施例中的请求方原生应用13和服务方原生应用14均是在操作系统中注册之后的应用。图11和图12不同的是,图11中还包括在操作系统中注册的Web应用关联程序15,此时Web应用关联程序与在操作系统中注册的原生应用(请求方原生应用、服务方原生应用)是一致的。需要说明的是,在图11中,服务方Web应用在操作系统中的注册信息是携带在浏览器的注册信息中。在图11和图12中,在操作系统中注册的服务方Web应用均可被操作系统的注册表查找。由此,上述终端能够实现Native应用调用Web应用的目的。本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1