一种资源共享的方法及终端转让专利

申请号 : CN201610958711.9

文献号 : CN107995245B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 莫卓颖

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本发明公开了一种资源共享的方法及终端,其中,终端本地应用中内嵌有本地超文本传输协议(HTTP)服务模块,所述方法包括:启动本地应用后调用所述本地HTTP服务模块,通过所述本地HTTP服务模块为多页面访问提供资源共享服务;将加载第一页面所访问到的资源作为共享资源,并缓存到所述本地HTTP服务模块中;加载第二页面时,通过本地HTTP的方式访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源。

权利要求 :

1.一种资源共享的方法,其特征在于,终端本地应用中内嵌有本地超文本传输协议HTTP服务模块,所述方法包括:启动本地应用后调用所述本地HTTP服务模块,通过所述本地HTTP服务模块为多页面访问提供资源共享服务;

将加载第一页面所访问到的资源作为共享资源,并缓存到所述本地HTTP服务模块中;

加载第二页面时,将所述第二页面的资源路径的地址替换为所述本地HTTP服务模块的地址,通过本地HTTP的方式,根据所述本地HTTP服务模块的地址访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源。

2.根据权利要求1所述的方法,其特征在于,启动本地应用后调用所述本地HTTP服务模块,通过所述本地HTTP服务模块为多页面访问提供资源共享服务,包括:所述本地应用以后台进程的方式启动所述本地HTTP服务模块,将所述本地HTTP服务模块确定为在所述第一页面和所述第二页面间实现资源共享的资源中介;

所述第一页面通过所述本地HTTP服务模块获取到与第二页面相关的资源;和/或所述第二页面通过所述本地HTTP服务模块获取到与第一页面相关的资源。

3.根据权利要求1所述的方法,其特征在于,所述多页面访问包括:本地应用的原生页面和本地应用内嵌web页面间的访问。

4.根据权利要求1所述的方法,其特征在于,若所述第一页面为本地应用的原生页面,所述第二页面为本地应用内嵌web页面,则所述加载第二页面时,将所述第二页面的资源路径的地址替换为所述本地HTTP服务模块的地址,通过本地HTTP的方式,根据所述本地HTTP服务模块的地址访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源,包括:通过第二页面发起HTTP请求;

通过所述本地HTTP服务模块拦截所述HTTP请求,解析出所述HTTP请求中包含的特征参数符合所述共享资源的获取条件;

将所述第二页面的资源路径的地址替换为所述本地HTTP服务模块的地址,根据所述本地HTTP服务模块的地址访问所述本地HTTP服务模块;

通过所述本地HTTP服务模块响应所述HTTP请求,将所述共享资源反馈给第二页面。

5.根据权利要求4所述的方法,其特征在于,解析出所述HTTP请求中包含的特征参数符合所述共享资源的获取条件,包括:从所述HTTP请求中提取的所述特征参数为资源路径时,判断所述资源路径是否与所述共享资源的路径一致,如果一致,则符合所述共享资源的获取条件。

6.根据权利要求4所述的方法,其特征在于,解析出所述HTTP请求中包含的特征参数符合所述共享资源的获取条件,包括:从所述HTTP请求中提取的所述特征参数为资源名称时,判断所述资源名称是否与所述共享资源的名称一致,如果一致,则符合所述共享资源的获取条件。

7.一种终端,其特征在于,终端本地应用中内嵌有本地超文本传输协议HTTP服务模块,所述终端包括:调用单元,用于启动本地应用后调用所述本地HTTP服务模块;

HTTP服务模块,用于为多页面访问提供资源共享服务;

缓存单元,用于将加载第一页面所访问到的资源作为共享资源,并缓存到所述本地HTTP服务模块中;

共享处理单元,用于加载第二页面时,将所述第二页面的资源路径的地址替换为所述本地HTTP服务模块的地址,通过本地HTTP的方式,根据所述本地HTTP服务模块的地址访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源。

8.根据权利要求7所述的终端,其特征在于,所述调用单元,进一步用于:以后台进程的方式启动所述本地HTTP服务模块,将所述本地HTTP服务模块确定为在所述第一页面和所述第二页面间实现资源共享的资源中介;

所述HTTP服务模块,进一步用于:

作为资源共享的资源中介,支持所述第一页面获取到与第二页面相关的资源;和/或支持所述第二页面获取到与第一页面相关的资源。

9.根据权利要求7所述的终端,其特征在于,所述多页面访问包括:本地应用的原生页面和本地应用内嵌web页面间的访问。

10.根据权利要求7所述的终端,其特征在于,所述共享处理单元,进一步用于所述第一页面为本地应用的原生页面,所述第二页面为本地应用内嵌web页面的情况下,通过第二页面发起HTTP请求;

所述本地HTTP服务模块,进一步用于:

拦截所述HTTP请求,解析出所述HTTP请求中包含的特征参数符合所述共享资源的获取条件;

所述共享处理单元,用于将所述第二页面的资源路径的地址替换为所述本地HTTP服务模块的地址,根据所述本地HTTP服务模块的地址访问所述本地HTTP服务模块;

所述本地HTTP服务模块,用于响应所述HTTP请求,将所述共享资源反馈给第二页面。

11.根据权利要求10所述的终端,其特征在于,所述本地HTTP服务模块,进一步用于:从所述HTTP请求中提取的所述特征参数为资源路径时,判断所述资源路径是否与所述共享资源的路径一致,如果一致,则符合所述共享资源的获取条件。

12.根据权利要求10所述的终端,其特征在于,所述本地HTTP服务模块,进一步用于:从所述HTTP请求中提取的所述特征参数为资源名称时,判断所述资源名称是否与所述共享资源的名称一致,如果一致,则符合所述共享资源的获取条件。

说明书 :

一种资源共享的方法及终端

技术领域

[0001] 本发明涉及信息共享技术,尤其涉及一种资源共享的方法及终端。

背景技术

[0002] 随着互联网技术的发展,智能终端的大量普及,信息的传输和交互越来越便捷。目前在终端的APP应用中,为了平衡开发效率以及从性能角度出发,存在着将原生Native页面和WEB页面混合使用的场景,从而导致相同的资源可能出现在Native页面的同时,也有可能出现在内嵌的WEB页面,目前由于权限的限制,无法有效地实现相同资源间的缓存访问共享。采用现有技术,需要通过特定的格式或开发特定的接口来实现本地缓存的访问共享,对于本地缓存的资源无法直接获取,会增加成本和访问延迟。然而,相关技术中,对于该问题,尚无有效解决方案。

发明内容

[0003] 有鉴于此,本发明实施例提供了一种资源共享的方法及终端,至少解决了现有技术存在的问题。
[0004] 本发明实施例的技术方案是这样实现的:
[0005] 本发明实施例的一种资源共享的方法,终端本地应用中内嵌有本地超文本传输协议HTTP服务模块,所述方法包括:
[0006] 启动本地应用后调用所述本地HTTP服务模块,通过所述本地HTTP服务模块为多页面访问提供资源共享服务;
[0007] 将加载第一页面所访问到的资源作为共享资源,并缓存到所述本地HTTP服务模块中;
[0008] 加载第二页面时,通过本地HTTP的方式访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源。
[0009] 上述方案中,启动本地应用后调用所述本地HTTP服务模块,通过所述本地HTTP服务模块为多页面访问提供资源共享服务,包括:
[0010] 所述本地应用以后台进程的方式启动所述本地HTTP服务模块,将所述本地HTTP服务模块确定为在所述第一页面和所述第二页面间实现资源共享的资源中介;
[0011] 所述第一页面通过所述本地HTTP服务模块获取到与第二页面相关的资源;和/或[0012] 所述第二页面通过所述本地HTTP服务模块获取到与第一页面相关的资源。
[0013] 上述方案中,所述多页面访问包括:本地应用的原生页面和本地应用内嵌web页面间的访问。
[0014] 上述方案中,若所述第一页面为本地应用的原生页面,所述第二页面为本地应用内嵌web页面,则所述加载第二页面时,通过本地HTTP的方式访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源,包括:
[0015] 通过第二页面发起HTTP请求;
[0016] 通过所述本地HTTP服务模块拦截所述HTTP请求,解析出所述HTTP请求中包含的特征参数符合所述共享资源的获取条件;
[0017] 通过所述本地HTTP服务模块响应所述HTTP请求,将所述共享资源反馈给第二页面。
[0018] 上述方案中,解析出所述HTTP请求中包含的特征参数符合所述共享资源的获取条件,包括:
[0019] 从所述HTTP请求中提取的所述特征参数为资源路径时,判断所述资源路径是否与所述共享资源的路径一致,如果一致,则符合所述共享资源的获取条件。
[0020] 上述方案中,解析出所述HTTP请求中包含的特征参数符合所述共享资源的获取条件,包括:
[0021] 从所述HTTP请求中提取的所述特征参数为资源名称时,判断所述资源名称是否与所述共享资源的名称一致,如果一致,则符合所述共享资源的获取条件。
[0022] 本发明实施例的一种终端,终端本地应用中内嵌有本地超文本传输协议HTTP服务模块,所述终端包括:
[0023] 调用单元,用于启动本地应用后调用所述本地HTTP服务模块;
[0024] HTTP服务模块,用于为多页面访问提供资源共享服务;
[0025] 缓存单元,用于将加载第一页面所访问到的资源作为共享资源,并缓存到所述本地HTTP服务模块中;
[0026] 共享处理单元,用于加载第二页面时,通过本地HTTP的方式访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源。
[0027] 上述方案中,所述调用单元,进一步用于:
[0028] 以后台进程的方式启动所述本地HTTP服务模块,将所述本地HTTP服务模块确定为在所述第一页面和所述第二页面间实现资源共享的资源中介;
[0029] 所述HTTP服务模块,进一步用于:
[0030] 作为资源共享的资源中介,支持所述第一页面获取到与第二页面相关的资源;和/或
[0031] 支持所述第二页面获取到与第一页面相关的资源。
[0032] 上述方案中,所述多页面访问包括:本地应用的原生页面和本地应用内嵌web页面间的访问。
[0033] 上述方案中,所述共享处理单元,进一步用于所述第一页面为本地应用的原生页面,所述第二页面为本地应用内嵌web页面的情况下,通过第二页面发起HTTP请求;
[0034] 所述本地HTTP服务模块,进一步用于:
[0035] 拦截所述HTTP请求,解析出所述HTTP请求中包含的特征参数符合所述共享资源的获取条件;
[0036] 响应所述HTTP请求,将所述共享资源反馈给第二页面。
[0037] 上述方案中,所述本地HTTP服务模块,进一步用于:
[0038] 从所述HTTP请求中提取的所述特征参数为资源路径时,判断所述资源路径是否与所述共享资源的路径一致,如果一致,则符合所述共享资源的获取条件。
[0039] 上述方案中,所述本地HTTP服务模块,进一步用于:
[0040] 从所述HTTP请求中提取的所述特征参数为资源名称时,判断所述资源名称是否与所述共享资源的名称一致,如果一致,则符合所述共享资源的获取条件。
[0041] 本发明实施例资源共享的方法,在终端本地应用中内嵌有本地超文本传输协议(HTTP)服务模块,所述方法包括:启动本地应用后调用所述本地HTTP服务模块,通过所述本地HTTP服务模块为多页面访问提供资源共享服务;将加载第一页面所访问到的资源作为共享资源,并缓存到所述本地HTTP服务模块中;加载第二页面时,通过本地HTTP的方式访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源。
[0042] 采用本发明实施例,调用本地HTTP服务模块,并将该本地HTTP服务模块作为多页面访问提供资源共享服务的中介,对多页面中任一页面之前缓存到本地HTTP服务模块的资源进行共享,有效地实现了相同资源间的缓存访问共享,使多页面中的其他页面在访问时,可以采用本地http的方式优先从本地获取资源,即从本地HTTP服务模块直接获取资源,而无需通过特定的格式或开发特定的接口来实现本地缓存的访问共享,从而减少了成本,降低了访问延迟。

附图说明

[0043] 图1为实现本发明各个实施例的移动终端一个可选的硬件结构示意图;
[0044] 图2为如图1所示的移动终端的通信系统示意图;
[0045] 图3为本发明实施例中进行信息交互的各方硬件实体的示意图;
[0046] 图4为本发明实施例一方法实现流程示意图;
[0047] 图5为本发明实施例一系统架构的示意图;
[0048] 图6-7为现有技术中实现多页面资源访问的示意图;
[0049] 图8为应用本发明实施例一应用场景的多页面资源共享访问的示意图。

具体实施方式

[0050] 下面结合附图对技术方案的实施作进一步的详细描述。
[0051] 现在将参考附图描述实现本发明各个实施例的移动终端。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明实施例的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。
[0052] 在下面的详细说明中,陈述了众多的具体细节,以便彻底理解本发明。不过,对于本领域的普通技术人员来说,显然可在没有这些具体细节的情况下实践本发明。在其他情况下,没有详细说明公开的公知方法、过程、组件、电路和网络,以避免不必要地使实施例的各个方面模糊不清。
[0053] 另外,本文中尽管多次采用术语“第一”、“第二”等来描述各种元件(或各种阈值或各种应用或各种指令或各种操作)等,不过这些元件(或阈值或应用或指令或操作)不应受这些术语的限制。这些术语只是用于区分一个元件(或阈值或应用或指令或操作)和另一个元件(或阈值或应用或指令或操作)。例如,第一操作可以被称为第二操作,第二操作也可以被称为第一操作,而不脱离本发明的范围,第一操作和第二操作都是操作,只是二者并不是相同的操作而已。
[0054] 本发明实施例中的步骤并不一定是按照所描述的步骤顺序进行处理,可以按照需求有选择的将步骤打乱重排,或者删除实施例中的步骤,或者增加实施例中的步骤,本发明实施例中的步骤描述只是可选的顺序组合,并不代表本发明实施例的所有步骤顺序组合,实施例中的步骤顺序不能认为是对本发明的限制。
[0055] 本发明实施例中的术语“和/或”指的是包括相关联的列举项目中的一个或多个的任何和全部的可能组合。还要说明的是:当用在本说明书中时,“包括/包含”指定所陈述的特征、整数、步骤、操作、元件和/或组件的存在,但是不排除一个或多个其他特征、整数、步骤、操作、元件和/或组件和/或它们的组群的存在或添加。
[0056] 本发明实施例的智能终端(如移动终端)可以以各种形式来实施。例如,本发明实施例中描述的移动终端可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、个人数字助理(PDA,Personal Digital Assistant)、平板电脑(PAD)、便携式多媒体播放器(PMP,Portable Media Player)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。下面,假设终端是移动终端。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
[0057] 图1为实现本发明各个实施例的移动终端一个可选的硬件结构示意图。
[0058] 移动终端100可以包括通信单元110、音频/视频(A/V)输入单元120、用户输入单元130、HTTP服务模块140、调用单元141、缓存单元142、共享处理单元143、输出单元150、显示单元151、存储单元160、接口单元170、处理单元180和电源单元190等等。图1示出了具有各种组件的移动终端,但是应理解的是,并不要求实施所有示出的组件。可以替代地实施更多或更少的组件。将在下面详细描述移动终端的元件。
[0059] 通信单元110通常包括一个或多个组件,其允许移动终端100与无线通信系统或网络之间的无线电通信(如果将移动终端用固定终端代替,也可以通过有线方式进行电通信)。例如,通信单元具体为无线通信单元时可以包括广播接收单元111、移动通信单元112、无线互联网单元113、短程通信单元114和位置信息单元115中的至少一个,这些单元是可选的,根据不同需求可以增删。
[0060] 广播接收单元111经由广播信道从外部广播管理服务器接收广播信号和/或广播相关信息。广播信道可以包括卫星信道和/或地面信道。广播管理服务器可以是生成并发送广播信号和/或广播相关信息的服务器或者接收之前生成的广播信号和/或广播相关信息并且将其发送给终端的服务器。广播信号可以包括TV广播信号、无线电广播信号、数据广播信号等等。而且,广播信号可以进一步包括与TV或无线电广播信号组合的广播信号。广播相关信息也可以经由移动通信网络提供,并且在该情况下,广播相关信息可以由移动通信单元112来接收。广播信号可以以各种形式存在,例如,其可以以数字多媒体广播(DMB,Digital Multimedia Broadcasting)的电子节目指南(EPG,Electronic Program Guide)、数字视频广播手持(DVB-H,Digital Video Broadcasting-Handheld)的电子服务指南(ESG,Electronic Service Guide)等等的形式而存在。广播接收单元111可以通过使用各种类型的广播系统接收信号广播。特别地,广播接收单元111可以通过使用诸如多媒体广播-地面(DMB-T,Digital Multimedia Broadcasting-Terrestrial)、数字多媒体广播-卫星(DMB-S,Digital Multimedia Broadcasting-Satellite)、数字视频广播手持(DVB-H),前向链路媒体(MediaFLO,Media Forward Link Only)的数据广播系统、地面数字广播综合服务(ISDB-T,Integrated Services Digital Broadcasting-Terrestrial)等等的数字广播系统接收数字广播。广播接收单元111可以被构造为适合提供广播信号的各种广播系统以及上述数字广播系统。经由广播接收单元111接收的广播信号和/或广播相关信息可以存储在存储器160(或者其它类型的存储介质)中。
[0061] 移动通信单元112将无线电信号发送到基站(例如,接入点、节点B等等)、外部终端以及服务器中的至少一个和/或从其接收无线电信号。这样的无线电信号可以包括语音通话信号、视频通话信号、或者根据文本和/或多媒体消息发送和/或接收的各种类型的数据。
[0062] 无线互联网单元113支持移动终端的无线互联网接入。该单元可以内部或外部地耦接到终端。该单元所涉及的无线互联网接入技术可以包括无线局域网络(Wi-Fi,WLAN,Wireless Local Area Networks)、无线宽带(Wibro)、全球微波互联接入(Wimax)、高速下行链路分组接入(HSDPA,High Speed Downlink Packet Access)等等。
[0063] 短程通信单元114是用于支持短程通信的单元。短程通信技术的一些示例包括蓝牙、射频识别(RFID,Radio Frequency Identification)、红外数据协会(IrDA,Infrared Data Association)、超宽带(UWB,Ultra Wideband)、紫蜂等等。
[0064] 位置信息单元115是用于检查或获取移动终端的位置信息的单元。位置信息单元的典型示例是全球定位系统(GPS,Global Positioning System)。根据当前的技术,GPS单元115计算来自三个或更多卫星的距离信息和准确的时间信息并且对于计算的信息应用三角测量法,从而根据经度、纬度和高度准确地计算三维当前位置信息。当前,用于计算位置和时间信息的方法使用三颗卫星并且通过使用另外的一颗卫星校正计算出的位置和时间信息的误差。此外,GPS单元115能够通过实时地连续计算当前位置信息来计算速度信息。
[0065] A/V输入单元120用于接收音频或视频信号。A/V输入单元120可以包括相机121和麦克风122,相机121对在视频捕获模式或图像捕获模式中由图像捕获装置获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元151上。经相机121处理后的图像帧可以存储在存储单元160(或其它存储介质)中或者经由通信单元110进行发送,可以根据移动终端的构造提供两个或更多相机121。麦克风122可以在电话通话模式、记录模式、语音识别模式等等运行模式中经由麦克风接收声音(音频数据),并且能够将这样的声音处理为音频数据。处理后的音频(语音)数据可以在电话通话模式的情况下转换为可经由移动通信单元112发送到移动通信基站的格式输出。麦克风122可以实施各种类型的噪声消除(或抑制)算法以消除(或抑制)在接收和发送音频信号的过程中产生的噪声或者干扰。
[0066] 用户输入单元130可以根据用户输入的命令生成键输入数据以控制移动终端的各种操作。用户输入单元130允许用户输入各种类型的信息,并且可以包括键盘、鼠标、触摸板(例如,检测由于被接触而导致的电阻、压力、电容等等的变化的触敏组件)、滚轮、摇杆等等。特别地,当触摸板以层的形式叠加在显示单元151上时,可以形成触摸屏。
[0067] 终端本地应用中内嵌有本地超文本传输协议HTTP服务模块140,用于为多页面访问提供资源共享服务。所述终端还包括:调用单元141,用于启动本地应用后调用所述本地HTTP服务模块。缓存单元142,用于将加载第一页面所访问到的资源作为共享资源,并缓存到所述本地HTTP服务模块中。共享处理单元143,用于加载第二页面时,通过本地HTTP的方式访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源。
[0068] 接口单元170用作至少一个外部装置与移动终端100连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别单元的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。识别单元可以是存储用于验证用户使用移动终端100的各种信息并且可以包括用户识别单元(UIM,User Identify Module)、客户识别单元(SIM,Subscriber Identity Module)、通用客户识别单元(USIM,Universal Subscriber Identity Module)等等。另外,具有识别单元的装置(下面称为"识别装置")可以采取智能卡的形式,因此,识别装置可以经由端口或其它连接装置与移动终端100连接。接口单元170可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端100内的一个或多个元件或者可以用于在移动终端和外部装置之间传输数据。
[0069] 另外,当移动终端100与外部底座连接时,接口单元170可以用作允许通过其将电力从底座提供到移动终端100的路径或者可以用作允许从底座输入的各种命令信号通过其传输到移动终端的路径。从底座输入的各种命令信号或电力可以用作用于识别移动终端是否准确地安装在底座上的信号。输出单元150被构造为以视觉、音频和/或触觉方式提供输出信号(例如,音频信号、视频信号、振动信号等等)。输出单元150可以包括显示单元151、音频输出单元152等等。
[0070] 显示单元151可以显示在移动终端100中处理的信息。例如,移动终端100可以显示相关用户界面(UI,User Interface)或图形用户界面(GUI,Graphical User Interface)。当移动终端100处于视频通话模式或者图像捕获模式时,显示单元151可以显示捕获的图像和/或接收的图像、示出视频或图像以及相关功能的UI或GUI等等。
[0071] 同时,当显示单元151和触摸板以层的形式彼此叠加以形成触摸屏时,显示单元151可以用作输入装置和输出装置。显示单元151可以包括液晶显示器(LCD,Liquid Crystal Display)、薄膜晶体管LCD(TFT-LCD,Thin Film Transistor-LCD)、有机发光二极管(OLED,Organic Light-Emitting Diode)显示器、柔性显示器、三维(3D)显示器等等中的至少一种。这些显示器中的一些可以被构造为透明状以允许用户从外部观看,这可以称为透明显示器,典型的透明显示器可以例如为透明有机发光二极管(TOLED)显示器等等。根据特定想要的实施方式,移动终端100可以包括两个或更多显示单元(或其它显示装置),例如,移动终端可以包括外部显示单元(未示出)和内部显示单元(未示出)。触摸屏可用于检测触摸输入压力以及触摸输入位置和触摸输入面积。
[0072] 音频输出单元152可以在移动终端处于呼叫信号接收模式、通话模式、记录模式、语音识别模式、广播接收模式等等模式下时,将通信单元110接收的或者在存储器160中存储的音频数据转换音频信号并且输出为声音。而且,音频输出单元152可以提供与移动终端100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元152可以包括扬声器、蜂鸣器等等。
[0073] 存储单元160可以存储由处理单元180执行的处理和控制操作的软件程序等等,或者可以暂时地存储己经输出或将要输出的数据(例如,电话簿、消息、静态图像、视频等等)。而且,存储单元160可以存储关于当触摸施加到触摸屏时输出的各种方式的振动和音频信号的数据。
[0074] 存储单元160可以包括至少一种类型的存储介质,所述存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等等)、随机访问存储器(RAM,Random Access Memory)、静态随机访问存储器(SRAM,Static Random Access Memory)、只读存储器(ROM,Read Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read Only Memory)、可编程只读存储器(PROM,Programmable Read Only Memory)、磁性存储器、磁盘、光盘等等。而且,移动终端100可以与通过网络连接执行存储单元160的存储功能的网络存储装置协作。
[0075] 处理单元180通常控制移动终端的总体操作。例如,处理单元180执行与语音通话、数据通信、视频通话等等相关的控制和处理。又如,处理单元180可以执行模式识别处理,以将在触摸屏上执行的手写输入或者图片绘制输入识别为字符或图像。
[0076] 电源单元190在处理单元180的控制下接收外部电力或内部电力并且提供操作各元件和组件所需的适当的电力。
[0077] 这里描述的各种实施方式可以以使用例如计算机软件、硬件或其任何组合的计算机可读介质来实施。对于硬件实施,这里描述的实施方式可以通过使用特定用途集成电路(ASIC,Application Specific Integrated Circuit)、数字信号处理器(DSP,Digital Signal Processing)、数字信号处理装置(DSPD,Digital Signal Processing Device)、可编程逻辑装置(PLD,Programmable Logic Device)、现场可编程门阵列(FPGA,Field Programmable Gate Array)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的电子单元中的至少一种来实施,在一些情况下,这样的实施方式可以在控制器180中实施。对于软件实施,诸如过程或功能的实施方式可以与允许执行至少一种功能或操作的单独的软件单元来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来实施,软件代码可以存储在存储器160中并且由控制器180执行。
[0078] 至此,己经按照其功能描述了移动终端。下面,为了简要起见,将描述诸如折叠型、直板型、摆动型、滑动型移动终端等等的各种类型的移动终端中的滑动型移动终端作为示例。因此,本发明能够应用于任何类型的移动终端,并且不限于滑动型移动终端。
[0079] 如图1中所示的移动终端100可以被构造为利用经由帧或分组发送数据的诸如有线和无线通信系统以及基于卫星的通信系统来操作。
[0080] 现在将参考图2描述其中根据本发明实施例的移动终端能够操作的通信系统。
[0081] 这样的通信系统可以使用不同的空中接口和/或物理层。例如,由通信系统使用的空中接口包括例如频分多址(FDMA,Frequency Division Multiple Access)、时分多址(TDMA,Time Division Multiple Access)、码分多址(CDMA,Code Division Multiple Access)和通用移动通信系统(UMTS,Universal Mobile Telecommunications System)(特别地,长期演进(LTE,Long Term Evolution))、全球移动通信系统(GSM)等等。作为非限制性示例,下面的描述涉及CDMA通信系统,但是这样的教导同样适用于其它类型的系统。
[0082] 参考图2,CDMA无线通信系统可以包括多个移动终端100、多个基站(BS,Base Station)270、基站控制器(BSC,Base Station Controller)275和移动交换中心(MSC,Mobile Switching Center)280。MSC280被构造为与公共电话交换网络(PSTN,Public Switched Telephone Network)290形成接口。MSC280还被构造为与可以经由回程线路耦接到基站270的BSC275形成接口。回程线路可以根据若干己知的接口中的任一种来构造,所述接口包括例如E1/T1、ATM、IP、PPP、帧中继、HDSL、ADSL或xDSL。将理解的是,如图2中所示的系统可以包括多个BSC275。
[0083] 每个BS 270可以服务一个或多个分区(或区域),由多向天线或指向特定方向的天线覆盖的每个分区放射状地远离BS 270。或者,每个分区可以由用于分集接收的两个或更多天线覆盖。每个BS 270可以被构造为支持多个频率分配,并且每个频率分配具有特定频谱(例如,1.25MHz,5MHz等等)。
[0084] 分区与频率分配的交叉可以被称为CDMA信道。BS 270也可以被称为基站收发器子系统(BTS,Base Transceiver Station)或者其它等效术语。在这样的情况下,术语“基站”可以用于笼统地表示单个BSC275和至少一个BS 270。基站也可以被称为“蜂窝站”。或者,特定BS 270的各分区可以被称为多个蜂窝站。
[0085] 如图2中所示,广播发射器(BT,Broadcast Transmitter)295将广播信号发送给在系统内操作的移动终端100。如图1中所示的广播接收单元111被设置在移动终端100处以接收由BT295发送的广播信号。在图2中,示出了几个卫星300,例如可以采用全球定位系统(GPS)卫星300。卫星300帮助定位多个移动终端100中的至少一个。
[0086] 在图2中,描绘了多个卫星300,但是理解的是,可以利用任何数目的卫星获得有用的定位信息。如图1中所示的位置信息单元115通常被构造为与卫星300配合以获得想要的定位信息。替代GPS跟踪技术或者在GPS跟踪技术之外,可以使用可以跟踪移动终端的位置的其它技术。另外,至少一个GPS卫星300可以选择性地或者额外地处理卫星DMB传输。
[0087] 作为无线通信系统的一个典型操作,BS 270接收来自各种移动终端100的反向链路信号。移动终端100通常参与通话、消息收发和其它类型的通信。特定基站270接收的每个反向链路信号被在特定BS 270内进行处理。获得的数据被转发给相关的BSC275。BSC提供通话资源分配和包括BS 270之间的软切换过程的协调的移动管理功能。BSC275还将接收到的数据路由到MSC280,其提供用于与PSTN290形成接口的额外的路由服务。类似地,PSTN290与MSC280形成接口,MSC与BSC275形成接口,并且BSC275相应地控制BS 270以将正向链路信号发送到移动终端100。
[0088] 移动终端中通信单元110的移动通信单元112基于移动终端内置的接入移动通信网络(如2G/3G/4G等移动通信网络)的必要数据(包括用户识别信息和鉴权信息)接入移动通信网络为移动终端用户的网页浏览、网络多媒体播放等业务传输移动通信数据(包括上行的移动通信数据和下行的移动通信数据)。
[0089] 通信单元110的无线互联网单元113通过运行无线热点的相关协议功能而实现无线热点的功能,无线热点支持多个移动终端(移动终端之外的任意移动终端)接入,通过复用移动通信单元112与移动通信网络之间的移动通信连接为移动终端用户的网页浏览、网络多媒体播放等业务传输移动通信数据(包括上行的移动通信数据和下行的移动通信数据),由于移动终端实质上是复用移动终端与通信网络之间的移动通信连接传输移动通信数据的,因此移动终端消耗的移动通信数据的流量由通信网络侧的计费实体计入移动终端的通信资费,从而消耗移动终端签约使用的通信资费中包括的移动通信数据的数据流量。
[0090] 图3为本发明实施例中进行信息交互的各方硬件实体的示意图,图3中包括:终端设备1,服务器2。其中,终端设备1由终端设备11-13构成,终端设备通过有线网络或者无线网络与服务器进行信息交互。终端设备包括手机、台式机、PC机、一体机等类型。采用本发明实施例,终端设备1经由网络与服务器2进行信息传输和交互,具体的,终端设备可以通过内嵌的本地HTTP服务模块为本地应用的多页面间访问提供资源共享服务,当页面访问需要使用资源时,首先判断本地是否存在该资源共享服务,如果是,则以本地http请求的形式去请求资源,以便优先从本地HTTP服务模块中得到请求的资源,如果本地HTTP服务模块中查询不到请求的资源,才通过网络向对端的服务器发起远程http请求,以便基于网络得到请求的资源。通过调用本地HTTP服务模块,并将该本地HTTP服务模块作为多页面访问提供资源共享服务的中介,对多页面中任一页面之前缓存到本地HTTP服务模块的资源进行共享,有效地实现了相同资源间的缓存访问共享,使多页面中的其他页面在访问时,可以采用本地http的方式优先从本地获取资源,即从本地HTTP服务模块直接获取资源,而无需通过特定的格式或开发特定的接口来实现本地缓存的访问共享,从而减少了成本,降低了访问延迟。
[0091] 具体的,终端设备的本地应用中内嵌有本地HTTP服务模块,执行的处理逻辑10如图3所示,包括:S1、启动本地应用后调用所述本地HTTP服务模块,通过所述本地HTTP服务模块为多页面访问提供资源共享服务;S2、将加载第一页面所访问到的资源作为共享资源,并缓存到所述本地HTTP服务模块中;S3、加载第二页面时,通过本地HTTP的方式访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源。
[0092] 上述图3的例子只是实现本发明实施例的一个系统架构实例,本发明实施例并不限于上述图3所述的系统结构,基于上述图3所述的系统架构,提出本发明方法各个实施例。
[0093] 本发明实施例的一种资源共享的方法,如图4所示,在终端本地应用中内嵌有本地HTTP服务模块,在实际应用中,该本地HTTP服务模块可以为本地HTTP服务器,其区别于远程的HTTP服务器,为内嵌于终端本地的本地HTTP服务器。所述方法包括:启动本地应用后调用所述本地HTTP服务模块,通过所述本地HTTP服务模块为多页面访问提供资源共享服务(101)。这里,所述多页面访问包括:本地应用的原生页面(如Native页面)和本地应用内嵌的web页面间的访问。将加载第一页面所访问到的资源作为共享资源,并缓存到所述本地HTTP服务模块中(102)。加载第二页面时,通过本地HTTP的方式访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源(103)。具体的,针对缓存的资源和基于该缓存的资源共享而言,对于多页面,Native页面或web页面中任意一个页面访问的资源,1)一种具体实现:比如,第一页面为Native页面,第二页面是web页面或其它Native页面,则第二页面可以直接访问缓存到本地HTTP服务模块中的资源,也就是说,通过本地HTTP方式读取终端本地的离线数据,而不需要通过联网并以远程HTTP的方式去对端远程下载所需要的数据。2)另一种具体实现:比如,第一页面为web页面,第二页面是Native页面,则第二页面可以直接访问缓存到本地HTTP服务模块中的资源,也就是说,通过本地HTTP方式读取终端本地的离线数据,而不需要通过联网并以远程HTTP的方式去对端远程下载所需要的数据。
[0094] 现有技术中存在的问题是:权限资源无法进行WEB页面共享;缺少可扩展性而导致两端的使用不便。采用本发明实施例,一个实际应用中,通过在APP客户端后台启动本地HTTP服务器的方式,可以先把视频等资源缓存至本地HTTP服务器中,然后内嵌的web页面通过本地HTTP的方式访问本地HTTP服务器,最终,web页面直接从本地HTTP服务器中获取并使用权限资源,进而实现资源共享,减少访问延迟。简单来说,APP客户端的资源通过桥梁服务器(或称中介服务器),如本地HTTP服务器实现与内嵌的web页面直接的资源的共享,之后,web页面可通过本地服务器(本地http的方式)实现对权限资源文件的直接获取。
[0095] 本发明实施例的一种资源共享的方法,在终端本地应用中内嵌有本地HTTP服务模块,在实际应用中,该本地HTTP服务模块可以为本地HTTP服务器,其区别于远程的HTTP服务器,为内嵌于终端本地的本地HTTP服务器。所述方法包括:本地应用以后台进程的方式启动所述本地HTTP服务模块,将所述本地HTTP服务模块确定为在所述第一页面和所述第二页面间实现资源共享的资源中介。第一页面通过本地HTTP服务模块获取到与第二页面相关的资源;和/或第二页面通过本地HTTP服务模块获取到与第一页面相关的资源,从而启动本地应用后通过调用所述本地HTTP服务模块,使所述本地HTTP服务模块支持为多页面访问提供资源共享服务。一个实际应用中,在APP客户端启动的时候,以后台进程的方式启动整个应用的资源共享,将内嵌的本地HTTP服务器作为Native页面以及web页面的中介资源共享服务器,Native页面可通过中介资源共享服务器获取web资源,而同样的,web页面也可通过中介资源共享服务获取Native资源。
[0096] 这里,所述多页面访问包括:本地应用的原生页面(如Native页面)和本地应用内嵌的web页面间的访问。将加载第一页面所访问到的资源作为共享资源,并缓存到所述本地HTTP服务模块中。加载第二页面时,通过本地HTTP的方式访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源。具体的,针对缓存的资源和基于该缓存的资源共享而言,对于多页面,Native页面或web页面中任意一个页面访问的资源,1)一种具体实现:比如,第一页面为Native页面,第二页面是web页面或其它Native页面,则第二页面可以直接访问缓存到本地HTTP服务模块中的资源,也就是说,通过本地HTTP方式读取终端本地的离线数据,而不需要通过联网并以远程HTTP的方式去对端远程下载所需要的数据。2)另一种具体实现:比如,第一页面为web页面,第二页面是Native页面,则第二页面可以直接访问缓存到本地HTTP服务模块中的资源,也就是说,通过本地HTTP方式读取终端本地的离线数据,而不需要通过联网并以远程HTTP的方式去对端远程下载所需要的数据。
[0097] 现有技术中存在的问题是:权限资源无法进行WEB页面共享;缺少可扩展性而导致两端的使用不便。采用本发明实施例,一个实际应用中,通过在APP客户端后台启动本地HTTP服务器的方式,可以先把视频等资源缓存至本地HTTP服务器中,然后内嵌的web页面通过本地HTTP的方式访问本地HTTP服务器,最终,web页面直接从本地HTTP服务器中获取并使用权限资源,进而实现资源共享,减少访问延迟。简单来说,APP客户端的资源通过桥梁服务器(或称中介服务器),如本地HTTP服务器实现与内嵌的web页面直接的资源的共享,之后,web页面可通过本地服务器(本地http的方式)实现对权限资源文件的直接获取。
[0098] 在实际应用中,若所述第一页面为本地应用的原生页面,所述第二页面为本地应用内嵌web页面,则所述加载第二页面时,通过本地HTTP的方式访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源,包括:通过第二页面发起HTTP请求,通过所述本地HTTP服务模块拦截所述HTTP请求,解析出所述HTTP请求中包含的特征参数符合所述共享资源的获取条件,通过所述本地HTTP服务模块响应所述HTTP请求,将所述共享资源反馈给第二页面,以根据所述共享资源生成网页信息,根据该网页信息渲染得到信息更新后的第二页面。
[0099] 基于上述各个实施例,在资源共享的方法中,解析出所述HTTP请求中包含的特征参数符合所述共享资源的获取条件,包括:
[0100] 一,从所述HTTP请求中提取的所述特征参数为资源路径时,判断所述资源路径是否与所述共享资源的路径一致,如果一致,则符合所述共享资源的获取条件。比如,用户在某个Native页面访问到的静态资源(如图片、视频等)缓存到启动的本地HTTP服务器中,该静态资源作为缓存,以备其它Native页面或者内嵌Web页面使用。如果Web页面中的某个资源路径与缓存的静态资源路径一致,就截获该资源路径的地址,替换为本地服务器地址,通过本地服务器返回缓存的资源给Web页面。
[0101] 二,从所述HTTP请求中提取的所述特征参数为资源名称时,判断所述资源名称是否与所述共享资源的名称一致,如果一致,则符合所述共享资源的获取条件。比如,用户在某个Native页面访问到的静态资源(图片、视频等)缓存到启动的本地HTTP服务器中,该静态资源作为缓存,以备其它Native页面或者内嵌Web页面使用。如果Web页面中的某个资源名称与缓存的静态资源名称一致,就截获该资源名称对应资源路径的地址,替换为本地服务器地址,通过本地服务器返回缓存的资源给Web页面。
[0102] 对于Native页面、Web页面说明如下:
[0103] 移动应用存在三种形态:Native(原生)应用、Web应用、混合应用,分别对应不同的页面形式。1)Native应用指的是用平台特定的开发语言所开发的应用,即:基于智能手机本地操作系统并使用原生程式编写运行的第三方应用程序。2)Web应用主要是采用统一标准的HTML(Hyper Text Mark-up Language,超文本标记语言)、JavaScript(Java脚本)、CSS(Cascading Style Sheet,层叠样式)等网页程序语言开发的应用,即:web应用是运行于网络和标准浏览器上,基于网页技术开发实现特定功能的应用,可以通过终端浏览器访问该类应用,且该类应用可以跨平台。3)混合应用是指融合Native应用和Web应用的应用。
[0104] 采用本发明实施例,APP客户端的资源通过本地HTTP服务器作为桥梁服务器或中介服务器,实现与内嵌webview直接的资源的共享,Web页面通过本地HTTP服务器来避免本地资源的权限限制,以实现本地缓存资源的利用,由于实现了本地资源最大化的共享,从而减少了网络带宽消耗、降低了服务器压力、减少了网络延迟,加快了页面打开速度。并且对整个Web开发者完全透明,利用后续的扩展。
[0105] 本发明实施例的资源共享的系统,如图5所示,包括终端41和服务器42。终端设备41与服务器42进行信息传输和交互,具体的,终端设备可以通过内嵌的本地HTTP服务模块为本地应用的多页面间访问提供资源共享服务,当页面访问需要使用资源时,首先判断本地是否存在该资源共享服务,如果是,则以本地http请求的形式去请求资源,以便优先从本地HTTP服务模块中得到请求的资源,如果本地HTTP服务模块中查询不到请求的资源,才通过网络向对端的服务器发起远程http请求,以便基于网络得到请求的资源。通过调用本地HTTP服务模块,并将该本地HTTP服务模块作为多页面访问提供资源共享服务的中介,对多页面中任一页面之前缓存到本地HTTP服务模块的资源进行共享,有效地实现了相同资源间的缓存访问共享,使多页面中的其他页面在访问时,可以采用本地http的方式优先从本地获取资源,即从本地HTTP服务模块直接获取资源,而无需通过特定的格式或开发特定的接口来实现本地缓存的访问共享,从而减少了成本,降低了访问延迟。终端设备41具体包括:
终端本地应用中内嵌有本地超文本传输协议HTTP服务模块411,用于为多页面访问提供资源共享服务;所述终端还包括:调用单元412,用于启动本地应用后调用所述本地HTTP服务模块;缓存单元413,用于将加载第一页面所访问到的资源作为共享资源,并缓存到所述本地HTTP服务模块中;共享处理单元413,用于加载第二页面时,通过本地HTTP的方式访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源。
[0106] 在实际应用中,在终端本地应用中内嵌有本地HTTP服务模块,该本地HTTP服务模块可以为本地HTTP服务器,其区别于远程的HTTP服务器,为内嵌于终端本地的本地HTTP服务器。启动本地应用后调用所述本地HTTP服务模块,通过所述本地HTTP服务模块为多页面访问提供资源共享服务。这里,所述多页面访问包括:本地应用的原生页面(如Native页面)和本地应用内嵌的web页面间的访问。将加载第一页面所访问到的资源作为共享资源,并缓存到所述本地HTTP服务模块中。加载第二页面时,通过本地HTTP的方式访问所述本地HTTP服务模块,从所述本地HTTP服务模块中直接获取所述共享资源。具体的,针对缓存的资源和基于该缓存的资源共享而言,对于多页面,Native页面或web页面中任意一个页面访问的资源,1)一种具体实现:比如,第一页面为Native页面,第二页面是web页面或其它Native页面,则第二页面可以直接访问缓存到本地HTTP服务模块中的资源,也就是说,通过本地HTTP方式读取终端本地的离线数据,而不需要通过联网并以远程HTTP的方式去对端远程下载所需要的数据。2)另一种具体实现:比如,第一页面为web页面,第二页面是Native页面,则第二页面可以直接访问缓存到本地HTTP服务模块中的资源,也就是说,通过本地HTTP方式读取终端本地的离线数据,而不需要通过联网并以远程HTTP的方式去对端远程下载所需要的数据。
[0107] 在本发明实施例一实施方式中,所述调用单元,进一步用于:以后台进程的方式启动所述本地HTTP服务模块,将所述本地HTTP服务模块确定为在所述第一页面和所述第二页面间实现资源共享的资源中介。所述HTTP服务模块,进一步用于:作为资源共享的资源中介,支持所述第一页面获取到与第二页面相关的资源;和/或支持所述第二页面获取到与第一页面相关的资源。
[0108] 在本发明实施例一实施方式中,所述多页面访问包括:本地应用的原生页面和本地应用内嵌web页面间的访问。
[0109] 在本发明实施例一实施方式中,所述共享处理单元,进一步用于所述第一页面为本地应用的原生页面,所述第二页面为本地应用内嵌web页面的情况下,通过第二页面发起HTTP请求。所述本地HTTP服务模块,进一步用于:拦截所述HTTP请求,解析出所述HTTP请求中包含的特征参数符合所述共享资源的获取条件;响应所述HTTP请求,将所述共享资源反馈给第二页面。
[0110] 在本发明实施例一实施方式中,所述本地HTTP服务模块,进一步用于:
[0111] 从所述HTTP请求中提取的所述特征参数为资源路径时,判断所述资源路径是否与所述共享资源的路径一致,如果一致,则符合所述共享资源的获取条件。
[0112] 在本发明实施例一实施方式中,所述本地HTTP服务模块,进一步用于:
[0113] 从所述HTTP请求中提取的所述特征参数为资源名称时,判断所述资源名称是否与所述共享资源的名称一致,如果一致,则符合所述共享资源的获取条件。
[0114] 其中,对于用于数据处理的处理器而言,在执行处理时,可以采用微处理器、中央处理器(CPU,Central Processing Unit)、数字信号处理器(DSP,Digital Singnal Processor)或可编程逻辑阵列(FPGA,Field-Programmable Gate Array)实现;对于存储介质来说,包含操作指令,该操作指令可以为计算机可执行代码,通过所述操作指令来实现上述本发明实施例信息处理方法流程中的各个步骤。
[0115] 这里需要指出的是:以上涉及终端和服务器项的描述,与上述方法描述是类似的,同方法的有益效果描述,不做赘述。对于本发明终端和服务器实施例中未披露的技术细节,请参照本发明方法流程描述的实施例所描述内容。
[0116] 以一个现实应用场景为例对本发明实施例阐述如下:
[0117] 在多页面访问的资源共享场景中,采用本发明实施例,是高效的app与web权限资源缓存共享方案。所涉及的技术用语包括:1)缓存:利用客户访问的时间局部性(Temproral Locality)原理,将客户访问过的内容在缓存(Cache)中存放一个副本,当该内容下次被访问时,不必连接到服务器,而是由Cache中保留的副本提供。2)APP客户端:mobile应用中app内容的载体。3)Native页面:利用客户端技术(例如java或者Object-c)编写的页面。4)内嵌webview:moblie应用中Web载体内嵌浏览器。5)Web页面:利用内嵌webview,通过Web编写的web页面。6)权限资源:由于web的权限限制,导致不能通过web技术读取本地的资源(例如视频、文件等资源)。
[0118] 目前在mobile APP应用中,为了平衡开发效率以及性能角度出发,大量APP应用掺杂着原生Native页面以及Web页面混合,导致了一个问题:相同的资源可能出现在Native页面的同时也有可能出现在内嵌Web页面,如何通过某种机制实现相同权限资源的多容器的缓存共享成为需要解决的问题。
[0119] 针对上述问题,现有技术中,常见的APP中Web页面与Native页面缓存共享的方式有两种,分别是:1)缓存离线包的方式和2)缓存JSAPI的方式。常见的信息共享利用也是针对这两种情况而制定的。就缓存离线包的方式而言,如图6所示,正常的情况下,Web页面请求静态资源--客户端拦截请求--篡改HTTP请求头--返回离线包中的缓存资源,通过这种方式,由于资源缓存在很多硬盘,命中静态资源即可减少网络请求,可以提高展现速度。就缓存JSAPI的方式而言,如图7所示,正常的情况下,Web页面通过JSAPI通知客户端--客户端发起数据请求--缓存网络数据至内存--Web调用接口获取内存的数据。
[0120] 传统的Web页面与Native页面缓存数据交互,主要是针对上述的两种情景,但是,存在两方面问题,第一方面:针对Web页面中的权限资源(例如视频文件等),由于WebView的安全限制,无法通过原生的方式使用本地资源,导致这类重复资源只能通过网络请求获取。第二方面:由于两种方式使用都需要通过指定的格式或者开发相应的客户端接口才可以实现资源的共享,从而导致扩展的困难。
[0121] 针对上述问题,采用本发明实施例,基于本地服务器的HTTP协议,设计了高效、成熟、通用的本方案,具体的,是在APP客户端后台启动本地服务器的方式,APP客户端可先把视频等资源缓存至本地服务器,然后内嵌web页面通过HTTP的方式访问本地服务器,最终实现WebView获取并使用权限资源,进而实现资源共享,减少访问延迟。
[0122] 在多页面访问的资源共享场景中,采用本发明实施例,针对现有方案的不足之处:①权限资源无法进行WEB页面共享;②缺少可扩展性导致两端的使用不便,在客户端启动的时候,以后台进程的方式启动整个应用的资源共享,将本地HTTP服务器作为Native页面以及WebView页面的中介资源共享服务器,Native页面可通过中介资源共享服务器获取Web资源,而同样的,Web页面也可通过中介资源共享服务获取Native资源,如图8所示。
[0123] 采用本发明实施例,一个实际应用中,在APP启动过程中,后台启动内嵌的本地HTTP服务器作为中介服务器。用户在某个Native页面访问到的静态资源(图片、视频等)缓存到启动的HTTP服务器中,作为缓存以备其它Native页面或者内嵌Web页面使用。如果Web页面中的某个资源路径以及名称与缓存的静态资源路径一致,APP公共模块会截获该地址,替换为本地服务器地址127.0.0.1,通过本地服务器返回缓存的资源。Web页面通过本地HTTP服务器避免本地资源权限限制实现本地缓存资源的利用,并且对整个Web开发者完全透明,从而解决了扩展性的问题。
[0124] 在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
[0125] 上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
[0126] 另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0127] 本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0128] 或者,本发明上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0129] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。