数据共享方法、装置、电子设备以及计算机可读存储介质与流程

文档序号:17011732发布日期:2019-03-02 02:16阅读:166来源:国知局
数据共享方法、装置、电子设备以及计算机可读存储介质与流程

本发明涉及计算机技术领域,具体涉及一种数据共享方法及装置、电子设备、及存储介质。



背景技术:

目前大型互联网公司的产品都形成了产品矩阵,同一家公司往往有很多款产品安装在一个手机上,为了实现同公司产品下的数据共享,需要通过中心服务器进行交换数据。显然,由于这种方式需要搭建服务资源,不但成本大,而且产品之间数据交换效率低。



技术实现要素:

鉴于以上内容,有必要提出一种数据共享方法、装置、及存储介质,用以解决应用程序之间数据交换效率低,成本高的的技术问题。

本发明的第一方面提供一种数据共享方法,所述方法包括:

电子设备的第一app建立访问日志,在所述访问日志中记录所述第一app向服务器发出的每个第一请求,及所述服务器响应每个第一请求所返回的数据;;

所述电子设备的第二app发出广播消息,其中,所述广播消息包括所述第二app所接收的请求获取数据的第二请求;

当所述第一app监听到所述广播消息时,检索所述访问日志,确定所述访问日志中是否记录了与所述第二请求相同的第一请求;

当所述访问日志中记录了与所述第二请求相同的第一请求时,所述第一app向所述第二app发出要求提供验证资料的请求;

所述第二app依据所述要求提供验证资料的请求,将所述验证资料发送给所述第一app;

当所述第一app根据所述验证资料确定所述第二app有权限获取服务器响应所述第一请求所返回的数据时,所述第一app将服务器响应所述第一请求所返回的数据发送给所述第二app;及

所述第二app接收所述第一app所发送的所述服务器响应所述第一请求所返回的数据,并将所述服务器响应所述第一请求所返回的数据作为所述服务器响应所述第二请求所返回的数据。

优选地,所述第二app的应用id和所述第一app的应用id不同。

优选地,所述第二app的软件开发商和所述第一app的软件开发商相同。

优选地,所述电子设备的第二app发出广播消息包括:

基于所述电子设备的本机地址发送所述广播消息。

优选地,所述验证资料为利用预设的加密算法加密过的字符串。

优选地,所述第二app依据所述要求提供验证资料的请求,将所述验证资料发送给所述第一app包括:

于所述第二app接收到所述要求提供所述验证资料的请求时,利用所述预设的加密算法加密所述第二app的软件软件开发商信息;及

将加密后的软件开发商信息作为验证资料发送到所述第一app。

优选地,所述第一app根据所述验证资料确定所述第二app有权限获取服务器响应所述第一请求所返回的数据包括:

当接收到所述验证资料时,所述第一app利用与所述预设的加密算法所对应的解密算法对所接收到的所述验证资料进行解密;

所述第一app比较所述解密后的验证资料是否与预设的资料相符,若所述解密后的验证资料与预设的资料相符,所述第一app则确定所述第二app有权限获取所述服务器响应所述第一请求所返回的数据,其中,所述预设的资料为所述第一app的软件开发商信息。

本发明第二方面提供一种电子设备,所述电子设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现所述数据共享方法。

本发明第三方面提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述数据共享方法。

本发明第四方面提供一种数据共享装置,所述装置包括:

第一接收模块,用于为电子设备的第一app建立访问日志,在所述访问日志中记录所述第一app向服务器发出的每个第一请求,及所述服务器响应每个第一请求所返回的数据;

第二发送模块,用于从所述电子设备的第二app发出广播消息,其中,所述广播消息包括所述第二app所接收的请求获取数据的第二请求;

判断模块,用于当从所述第一app监听到所述广播消息时,检索所述访问日志,确定所述访问日志中是否记录了与所述第二请求相同的第一请求;

第一发送模块,用于当所述访问日志中记录了与所述第二请求相同的第一请求时,从所述第一app向所述第二app发出要求提供验证资料的请求;

执行模块,用于依据所述要求提供验证资料的请求,从所述第二app将所述验证资料发送给所述第一app;

所述第一发送模块,还用于当所述第一app根据所述验证资料确定所述第二app有权限获取服务器响应所述第一请求所返回的数据时,从所述第一app将服务器响应所述第一请求所返回的数据发送给所述第二app;

所述第二接收模块,还用于接收所述第一app所发送的所述服务器响应所述第一请求所返回的数据,并将所述服务器响应所述第一请求所返回的数据作为所述服务器响应所述第二请求所返回的数据。

本发明实施例中所述的数据共享方法及装置、电子设备,及存储介质,可以将电子设备的第一应用程序向服务器发出的请求获取数据的第一请求,与服务器响应所述第一请求所返回的数据之间建立关联并存储在电子设备中,使得当电子设备的第二应用程序发出与所述第一请求相同的第二请求时,可以直接将服务器响应所述第一请求所返回的数据发送给所述第二应用程序。从而第二应用程序无需透过外网访问服务器来获取第二请求所请求的数据,节约了第二应用程序向服务器请求获取数据所需要的网络流量。此外,本发明于第二应用程序发出包括第二请求的广播消息时,还会对第二应用程序做相关的身份验证,以在第二应用程序通过身份校验时才将服务器响应第一请求所返回的数据返回给第二应用程序,有效避免了不同应用程序之间因数据共享带来的数据安全问题。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1是本发明实施例一提供的数据共享方法的应用环境架构图。

图2是本发明实施例二提供的数据共享方法的流程图。

图3是本发明实施例三提供的数据共享装置的结构图。

图4是本发明实施例四提供的电子设备的示意图。

如下具体实施方式将结合上述附图进一步说明本发明。

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。

实施例一

参阅图1所示,为本发明实施例一提供的数据共享方法的应用环境架构图。

本发明的数据共享方法应用在一个电子设备及一个服务器构成的环境中。例如,由电子设备3和服务器4构成的环境中。

本实施例中,所述电子设备3可以为手机、平板电脑、智能电视、穿戴式设备等装置。所述电子设备3中安装并运行有至少两个app(application,应用程序)。

在一个实施例中,所述电子设备3与服务器4可以通过有线(例如usb(universalserialbus,通用串行总线)或无线的方式建立通讯连接。所述无线方式可以是传统无线通讯的任何类型,例如无线电、无线保真(wirelessfidelity,wifi)、蜂窝、卫星、广播等。无线通讯技术可以包括,但不限于,全球移动通信系统(globalsystemformobilecommunications,gsm)、通用分组无线业务(generalpacketradioservice,gprs)、码分多址(codedivisionmultipleaccess,cdma),宽带码分多址(w-cdma)、cdma2000、imt单载波(imtsinglecarrier)、增强型数据速率gsm演进(enhanceddataratesforgsmevolution,edge)、长期演进技术(long-termevolution,lte)、高级长期演进技术、时分长期演进技术(time-divisionlte,td-lte)、高性能无线电局域网(highperformanceradiolocalareanetwork,hiperlan)、高性能无线电广域网(highperformanceradiowideareanetwork,hiperwan)、本地多点派发业务(localmultipointdistributionservice,lmds)、全微波存取全球互通(worldwideinteroperabilityformicrowaveaccess,wimax)、紫蜂协议(zigbee)、蓝牙、正交频分复用技术(flashorthogonalfrequency-divisionmultiplexing,flash-ofdm)、大容量空分多路存取(highcapacityspatialdivisionmultipleaccess,hc-sdma)、通用移动电信系统(universalmobiletelecommunicationssystem,umts)、通用移动电信系统时分双工(umtstime-divisionduplexing,umts-tdd)、演进式高速分组接入(evolvedhighspeedpacketaccess,hspa+)、时分同步码分多址(timedivisionsynchronouscodedivisionmultipleaccess,td-scdma)、演进数据最优化(evolution-dataoptimized,ev-do)、数字增强无绳通信(digitalenhancedcordlesstelecommunications,dect)及其他。

实施例二

图2是本发明实施例二提供的数据共享方法的第一流程图。

在本实施例中,所述数据共享方法可以应用于电子设备中,对于需要进行数据共享的电子设备,可以直接在电子设备上集成本发明的方法所提供的用于数据共享的功能,或者以软件开发工具包(softwaredevelopmentkit,sdk)的形式运行在电子设备上。

如图2所示,所述数据共享方法具体包括以下步骤,根据不同的需求,所述流程图中步骤的顺序可以改变,某些步骤可以省略。

步骤s1、电子设备的第一app(application,应用程序)向服务器发出第一请求,请求获取数据。所述第一app获取所述服务器响应所述第一请求所返回的数据(为便于描述,服务器所返回的数据可以简称为“返回的数据”)。所述第一app建立一个访问日志,在所述访问日志中记录所述第一请求与所述返回的数据对应,并将所述访问日志进行存储,例如存储在所述电子设备的存储器中。

在一个实施例中,所述第一app可以为安装在所述电子设备中的任何类型的app。例如所述第一app可以为游戏软件、浏览器、翻译软件等。所述电子设备可以为手机、平板电脑等设备。

举例而言,以所述第一app为翻译软件例如百度翻译为例,假设所述第一app依据用户的输入向所述服务器发出第一请求,例如请求获取单词“book”的中文翻译,以及获取到所述服务器响应该第一请求所返回的数据例如“书”。所述第一app则在所述访问日志中记录所述第一请求(即请求获取“book”的中文翻译)与所述服务器所返回的数据(即“书”)对应。

依此方法,所述第一app在所述访问日志中记录所述第一app向所述服务器发出的每个第一请求,及与每个第一请求所对应的数据(即服务器响应每个第一请求所返回的数据)。

例如,仍然以所述第一app为翻译软件例如百度翻译为例,假设所述第一app依据用户的输入向所述服务器发出另一个第一请求,例如请求获取单词“brother”的中文翻译,以及获取到所述服务器响应该另一个第一请求所返回的数据例如“兄弟”。所述第一app则在所述访问日志中记录所述另一个第一请求(即请求获取“brother”的中文翻译)与所述服务器所返回的数据(即“兄弟”)对应。

步骤s2、所述电子设备的第二app接收请求获取数据的第二请求,并发出广播消息。其中,所述广播消息包括所述第二请求。

在一个实施例中,所述第二app基于所述电子设备的本机地址(如127.0.0.1)来发送所述广播消息,从而使得所述第二app发送的广播消息可以被所述电子设备的其他app例如所述第一app监听到。

在一个实施例中,所述第二app可以为安装在电子设备中的任何类型的app。例如所述第二app可以为游戏软件、浏览器、翻译软件等。

本实施例中,所述第二app的应用id和所述第一app的应用id不用。所述应用id是指用于唯一标识一个app的识别号。在一个实施例中,所述第二app的软件开发商和所述第一app的软件开发商相同。例如,当所述第一app为百度翻译时,所述第二app可以为百度浏览器,即所述第一app和所述第二app的软件开发商相同。

举例而言,假设所述第二app为百度浏览器,所述第二app接收到用户的第二请求,请求获取单词“book”的中文翻译。所述第二app则基于所述电子设备的本机地址(如127.0.0.1)发送一个包括所述第二请求的广播消息,从而使得所述电子设备的所述第一app能够监听到所述广播消息。

步骤s3、所述第一app监听所述电子设备的所述第二app所发送的所述广播消息。当所述第一app监听到所述第二app发送过来的所述广播消息时,执行步骤s4。

在一个实施例中,所述第一app实时或每隔预设时间(例如2秒)监听所述广播消息。

步骤s4、当所述第一app监听到所述第二app发送过来的所述广播消息时,所述第一app获取所述广播消息中所包括的第二请求,检索所述第一app的访问日志,确定所述访问日志中是否记录了与所述第二请求相同的第一请求。若所述访问日志中记录了与所述第二请求相同的第一请求,则执行步骤s5。若所述访问日志中没有记录与所述第二请求相同的第一请求,则结束流程。

举例而言,假设所述广播消息中所包括的第二请求为请求获取单词“book”的中文翻译。由于所述第一app所对应的访问日志中记录了有关请求获取单词“book”的中文翻译的第一请求,那么所述第一app即可从所述访问日志中检索到请求获取单词“book”的中文翻译的第一请求与所述广播消息中所包括的第二请求相同,此时执行步骤s5。

步骤s5、所述第一app向所述第二app发出要求提供验证资料的请求,所述验证资料用于校验所述第二app是否有权限获取与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据)。

在一个实施例中,所述验证资料可以为一个利用预设的加密算法(例如,des算法)加密过的字符串。在一个实施例中,所述字符串包括所述第二app的信息(例如第二app的软件开发商信息)。

步骤s6、所述第二app依据所述要求提供验证资料的请求,将所述验证资料发送给所述第一app。

在一个实施例中,所述第二app可以于接收到所述第一app所发送的要求提供所述验证资料的请求时,利用所述预设的加密算法加密所述第二app的软件软件开发商信息,并将加密后的软件开发商信息作为验证资料发送到所述第一app,从而使得所述第一app可以接收到所述验证资料。

步骤s7、所述第一app接收所述第二app发送过来的验证资料,并根据所述验证资料判断所述第二app是否有权限获取与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据)。若判断得出所述第二app有权限获取与所述第一请求所对应的数据,执行步骤s8。若判断得出所述第二app没有有权限获取与所述第一请求所对应的数据,结束流程。

在一个实施例中,当接收到所述第二app发送过来的验证资料时,所述第一app利用与所述预设的加密算法所对应的解密算法对所接收到的所述验证资料进行解密,并比较所述解密后的验证资料是否与预设的资料相符。若所述解密后的验证资料与预设的资料相符,则确定所述第二app有权限获取与所述第一请求所对应的数据,执行步骤s8。

在一个实施例中,所述预设的资料为所述第一app的软件开发商信息。由此,当所述第一app和第二app的软件开发商相同时,所述第一app认定所述第二app有权限获取与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据)。

步骤s8、所述第一app将与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据)发送给所述第二app。

举例而言,仍然假设所述第二app为百度浏览器,所述第二请求为请求获取单词“book”的中文翻译,当所述第一app检索到所述第一app所对应的访问日志中存在与所述第二请求相同的第一请求,且所述第一app确定所述第二app有权限获取与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据)时,所述第一app则将所述访问日志中所记录的与所述第一请求(例如请求获取单词“book”的中文翻译)所对应的数据(例如“书”)发送给所述第二app(例如百度浏览器)。

步骤s9、所述第二app接收所述第一app发送过来的与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据),并将所述与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据)作为所述服务器响应所述第二请求所返回的数据。由此,所述第二app无需透过外网访问服务器来获取所述第二请求所请求的数据,节约了第二app需透过外网向服务器请求获取数据所需的网络流量。

综上所述,本发明实施例中所述的数据共享方法,可以将电子设备的第一应用程序向服务器发出的请求获取数据的第一请求,与服务器响应所述第一请求所返回的数据之间建立关联并存储在电子设备中,使得当电子设备的第二应用程序发出与所述第一请求相同的第二请求时,可以直接将服务器响应所述第一请求所返回的数据发送给所述第二应用程序。从而第二应用程序无需透过外网访问服务器来获取第二请求所请求的数据,节约了第二应用程序向服务器请求获取数据所需要的网络流量。此外,本发明于第二应用程序发出包括第二请求的广播消息时,还会对第二应用程序做相关的身份验证,以在第二应用程序通过身份校验时才将服务器响应第一请求所返回的数据返回给第二应用程序,有效避免了不同应用程序之间因数据共享带来的数据安全问题。

上述图2详细介绍了本发明的数据共享方法,下面结合第3~4图,对实现所述数据共享方法的软件装置的功能模块以及实现所述数据共享方法的硬件装置架构进行介绍。

应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。

实施例三

参阅图3所示,是本发明实施例三提供的数据共享装置的结构图。

在一些实施例中,所述数据共享装置30运行于电子设备中。所述电子设备通过网络连接了服务器。所述数据共享装置30可以包括多个由程序代码段所组成的功能模块。所述数据共享装置30中的各个程序段的程序代码可以存储于电子设备的存储器中,并由所述至少一个处理器所执行,以实现(详见图2描述)数据共享。

本实施例中,所述数据共享装置30根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:第一发送模块301、第一接收模块302、第二接收模块303、第二发送模块304、监听模块305、判断模块306、执行模块307。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。

所述第一app(application,应用程序)通过所述第一发送模块301向服务器发出第一请求,请求获取数据。所述第一app通过所述第一接收模块302获取所述服务器响应所述第一请求所返回的数据(为便于描述,服务器所返回的数据可以简称为“返回的数据”)。所述第一app通过所述第一接收模块302建立一个访问日志,在所述访问日志中记录所述第一请求与所述返回的数据对应,并将所述访问日志进行存储,例如存储在所述电子设备的存储器中。

在一个实施例中,所述第一app可以为安装在所述电子设备中的任何类型的app。例如所述第一app可以为游戏软件、浏览器、翻译软件等。所述电子设备可以为手机、平板电脑等设备。

举例而言,以所述第一app为翻译软件例如百度翻译为例,假设所述第一app通过所述第一发送模块301依据用户的输入向所述服务器发出第一请求,例如请求获取单词“book”的中文翻译,以及通过所述第一接收模块302获取到所述服务器响应该第一请求所返回的数据例如“书”。所述第一app则通过所述第一接收模块302在所述访问日志中记录所述第一请求(即请求获取“book”的中文翻译)与所述服务器所返回的数据(即“书”)对应。

依此方法,所述第一app通过所述第一接收模块302在所述访问日志中记录所述第一app向所述服务器发出的每个第一请求,及与每个第一请求所对应的数据(即服务器响应每个第一请求所返回的数据)。

例如,仍然以所述第一app为翻译软件例如百度翻译为例,假设所述第一app通过所述第一发送模块301依据用户的输入向所述服务器发出另一个第一请求,例如请求获取单词“brother”的中文翻译,以及通过所述第一接收模块302获取到所述服务器响应该另一个第一请求所返回的数据例如“兄弟”。所述第一app则通过所述第一接收模块302在所述访问日志中记录所述另一个第一请求(即请求获取“brother”的中文翻译)与所述服务器所返回的数据(即“兄弟”)对应。

所述电子设备的第二app通过所述第二接收模块303接收请求获取数据的第二请求,并通过所述第二发送模块304发出广播消息。其中,所述广播消息包括所述第二请求。

在一个实施例中,所述第二app通过所述第二发送模块304基于所述电子设备的本机地址(如127.0.0.1)来发送所述广播消息,从而使得所述第二app发送的广播消息可以被所述电子设备的其他app例如所述第一app监听到。

在一个实施例中,所述第二app可以为安装在电子设备中的任何类型的app。例如所述第二app可以为游戏软件、浏览器、翻译软件等。

本实施例中,所述第二app的应用id和所述第一app的应用id不用。所述应用id是指用于唯一标识一个app的识别号。在一个实施例中,所述第二app的软件开发商和所述第一app的软件开发商相同。例如,当所述第一app为百度翻译时,所述第二app可以为百度浏览器,即所述第一app和所述第二app的软件开发商相同。

举例而言,假设所述第二app为百度浏览器,所述第二app通过所述第二接收模块303接收到用户的第二请求,请求获取单词“book”的中文翻译。所述第二app则通过所述第二发送模块304基于所述电子设备的本机地址(如127.0.0.1)发送一个包括所述第二请求的广播消息,从而使得所述电子设备的所述第一app能够监听到所述广播消息。

所述第一app通过所述监听模块305监听所述电子设备的所述第二app所发送的所述广播消息。

在一个实施例中,所述第一app通过所述监听模块305实时或每隔预设时间(例如2秒)监听所述广播消息。

当所述第一app通过所述监听模块305监听到所述第二app发送过来的所述广播消息时,所述第一app通过所述第一接收模块302获取所述广播消息中所包括的第二请求。所述第一app通过所述判断模块306检索所述第一app的访问日志,确定所述访问日志中是否记录了与所述第二请求相同的第一请求。

举例而言,假设所述广播消息中所包括的第二请求为请求获取单词“book”的中文翻译。由于所述第一app所对应的访问日志中记录了有关请求获取单词“book”的中文翻译的第一请求,那么所述第一app通过所述判断模块306即可从所述访问日志中检索到请求获取单词“book”的中文翻译的第一请求与所述广播消息中所包括的第二请求相同。

若所述第一app通过所述判断模块306确定所述访问日志中记录了与所述第二请求相同的第一请求,所述第一app通过所述第一发送模块301向所述第二app发出要求提供验证资料的请求。其中,所述验证资料用于校验所述第二app是否有权限获取与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据)。

在一个实施例中,所述验证资料可以为一个利用预设的加密算法(例如,des算法)加密过的字符串。在一个实施例中,所述字符串包括所述第二app的信息(例如第二app的软件开发商信息)。

所述第二app通过所述执行模块307依据所述要求提供验证资料的请求,将所述验证资料发送给所述第一app。

在一个实施例中,所述第二app可以于通过所述第二接收模块303接收到所述第一app所发送的要求提供所述验证资料的请求时,通过所述执行模块307利用所述预设的加密算法加密所述第二app的软件软件开发商信息,并将加密后的软件开发商信息作为验证资料发送到所述第一app,从而使得所述第一app可以接收到所述验证资料。

所述第一app通过所述第一发送模块301接收所述第二app发送过来的验证资料,并通过所述判断模块306根据所述验证资料判断所述第二app是否有权限获取与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据)。

在一个实施例中,当所述第一app通过所述第一接收模块302接收到所述第二app发送过来的验证资料时,所述第一app通过所述判断模块306利用与所述预设的加密算法所对应的解密算法对所接收到的所述验证资料进行解密,并比较所述解密后的验证资料是否与预设的资料相符。若所述解密后的验证资料与预设的资料相符,则确定所述第二app有权限获取与所述第一请求所对应的数据。

在一个实施例中,所述预设的资料为所述第一app的软件开发商信息。由此,当所述第一app和第二app的软件开发商相同时,所述第一app通过所述判断模块306认定所述第二app有权限获取与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据)。

若通过所述判断模块306判断得出所述第二app有权限获取与所述第一请求所对应的数据。所述第一app通过所述第一发送模块301将与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据)发送给所述第二app。

举例而言,仍然假设所述第二app为百度浏览器,所述第二请求为请求获取单词“book”的中文翻译,当所述第一app通过所述判断模块306检索到所述第一app所对应的访问日志中存在与所述第二请求相同的第一请求,且所述第一app通过所述判断模块306确定所述第二app有权限获取与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据)时,所述第一app则通过所述第一发送模块301将所述访问日志中所记录的与所述第一请求(例如请求获取单词“book”的中文翻译)所对应的数据(例如“书”)发送给所述第二app(例如百度浏览器)。

所述第二app通过所述第二接收模块303接收所述第一app发送过来的与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据),并将所述与所述第一请求所对应的数据(即服务器响应所述第一请求所返回的数据)作为所述服务器响应所述第二请求所返回的数据。由此,所述第二app无需透过外网访问服务器来获取所述第二请求所请求的数据,节约了第二app需透过外网向服务器请求获取数据所需的网络流量。

综上所述,本发明实施例中所述的数据共享装置,可以将电子设备的第一应用程序向服务器发出的请求获取数据的第一请求,与服务器响应所述第一请求所返回的数据之间建立关联并存储在电子设备中,使得当电子设备的第二应用程序发出与所述第一请求相同的第二请求时,可以直接将服务器响应所述第一请求所返回的数据发送给所述第二应用程序。从而第二应用程序无需透过外网访问服务器来获取第二请求所请求的数据,节约了第二应用程序向服务器请求获取数据所需要的网络流量。此外,本发明于第二应用程序发出包括第二请求的广播消息时,还会对第二应用程序做相关的身份验证,以在第二应用程序通过身份校验时才将服务器响应第一请求所返回的数据返回给第二应用程序,有效避免了不同应用程序之间因数据共享带来的数据安全问题。

实施例四

参阅图4所示,为本发明实施例四提供的电子设备的结构示意图。在本发明较佳实施例中,所述电子设备3包括存储器31、至少一个处理器32、至少一条通信总线33。

本领域技术人员应所述了解,图4示出的电子设备的结构并不构成本发明实施例的限定,既可以是总线型结构,也可以是星形结构,所述电子设备3还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。

在一些实施例中,所述电子设备3包括一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的终端,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。

需要说明的是,所述电子设备3仅为举例,其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。

在一些实施例中,所述存储器31用于存储程序代码和各种数据,例如安装在所述电子设备3中的数据共享装置30、第一应用程序311、第二应用程序312,并在电子设备3的运行过程中实现高速、自动地完成程序或数据的存取。所述存储器31包括只读存储器(read-onlymemory,rom)、随机存储器(randomaccessmemory,ram)、可编程只读存储器(programmableread-onlymemory,prom)、可擦除可编程只读存储器(erasableprogrammableread-onlymemory,eprom)、一次可编程只读存储器(one-timeprogrammableread-onlymemory,otprom)、电子擦除式可复写只读存储器(electrically-erasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。

在一些实施例中,所述至少一个处理器32可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(centralprocessingunit,cpu)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述至少一个处理器32是所述电子设备3的控制核心(controlunit),利用各种接口和线路连接整个电子设备3的各个部件,通过运行或执行存储在所述存储器31内的程序或者模块,以及调用存储在所述存储器31内的数据,以执行电子设备3的各种功能和处理数据,例如执行数据共享的功能。

在一些实施例中,所述至少一条通信总线33被设置为实现所述存储器31以及所述至少一个处理器32等之间的连接通信。

尽管未示出,所述电子设备3还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器32逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备3还可以包括多种传感器、蓝牙模块、wi-fi模块等,在此不再赘述。

应所述了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。

上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是服务器、个人电脑等)或处理器(processor)执行本发明各个实施例所述方法的部分。

在进一步的实施例中,结合图3,所述至少一个处理器32可执行所述电子设备3的操作装置以及安装的各类应用程序(如所述的数据共享装置30、第一应用程序311、第二应用程序312)、程序代码等,例如,上述的各个模块。

所述存储器31中存储有程序代码,且所述至少一个处理器32可调用所述存储器31中存储的程序代码以执行相关的功能。例如,图3中所述的各个模块是存储在所述存储器31中的程序代码,并由所述至少一个处理器32所执行,从而实现所述各个模块的功能以达到应用程序之间例如所述第一应用程序311和第二应用程序312之间进行数据共享的目的。

在本发明的一个实施例中,所述存储器31存储多个指令,所述多个指令被所述至少一个处理器32所执行以实现应用程序之间例如所述第一应用程序311和第二应用程序312之间进行数据共享。

具体地,所述至少一个处理器32对上述指令的具体实现方法可参考图2对应实施例中相关步骤的描述,在此不赘述。

在本发明所提供的几个实施例中,应所述理解到,所揭露的装置,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1