本发明涉及计算机技术领域,尤其涉及一种信息显示方法、装置及电子设备。
背景技术:
随着计算机技术的不断发展,安装在Android等操作系统上的应用间的调用越来越多,其中,一种常见的应用间调用为将一种应用的页面和页面逻辑展示在另一种应用上。假设一种应用为A应用,另一种应用为B应用,当A应用的页面和页面逻辑需要展示在B应用上时,为了显示A应用的页面和页面逻辑,B应用可以存储A应用的代码。然而,由于A应用和B应用可能属于不同的厂商,因此,A应用和B应用的更新频率可能不同。当B应用的更新频率低于A应用的更新频率时,B应用上展示的A应用的页面和页面逻辑可能不是A应用的最新的页面和页面逻辑,以致B应用无法及时的展示A应用的页面和页面逻辑。为了解决上述问题,当B应用需要展示A应用的页面和页面逻辑时,B应用将获取A应用的代码,但这需要A应用启动,以致需要A应用和B应用同时运行,从而增加了功耗。
技术实现要素:
本发明实施例公开了一种信息显示方法、装置及电子设备,用于解决一个应用显示另一个应用的页面和页面逻辑时需要两个应用同时运行的问题。
本发明实施例第一方面公开一种信息显示方法,包括:
创建第一客户端的接口;
通过所述接口创建包括第二客户端的上下文对象和所述第一客户端的名称的信息;
根据所述信息将所述第二客户端的页面和页面逻辑显示在所述第一客户端的页面上。
在一个实施例中,所述第一客户端存储有软件开发包SDK,所述SDK中存储有用于创建所述第二客户端的上下文对象的创建代码;
所述通过所述接口创建包括第二客户端的上下文对象和所述第一客户端的名称的信息包括:
通过所述接口从所述SDK中获取所述创建代码;
将所述第一客户端的名称添加在所述创建代码中;
执行添加所述名称后的所述创建代码,以创建包括所述第二客户端的上下文对象和所述第一客户端的名称的信息。
在一个实施例中,所述第一客户端还存储有jar包;
所述通过所述接口从所述SDK中获取所述创建代码包括:
建立所述接口与所述jar包的连接;
通过所述jar包与所述SDK的映射关系,从所述SDK中获取所述创建代码。
在一个实施例中,所述SDK中还存储有用于调用所述第二客户端的代码的调用代码;
所述根据所述信息将所述第二客户端的页面和页面逻辑显示在所述第一客户端的页面上包括:
当检测到用于将所述第二客户端的页面和页面逻辑显示在所述第一客户端的页面上的显示指令时,根据所述信息建立所述接口与所述jar包的连接;
通过所述jar包与所述SDK的映射关系,从所述SDK中获取所述调用代码;
执行所述调用代码,以获取所述第二客户端的代码;
在所述第一客户端中执行所述第二客户端的代码,以将所述第二客户端的页面和页面逻辑显示在所述第一客户端的页面上。
在一个实施例中,所述方法还包括:
将所述第一客户端的显示区域中的目标区域分配给所述第二客户端;
所述根据所述信息将所述第二客户端的页面和页面逻辑显示在所述第一客户端的页面上包括:
根据所述信息将所述第二客户端的页面和页面逻辑显示在所述目标区域上。
本发明实施例第二方面公开一种信息显示装置,包括:
第一创建单元,用于创建第一客户端的接口;
第二创建单元,用于通过所述第一创建单元创建的接口创建包括第二客户端的上下文对象和所述第一客户端的名称的信息;
显示单元,用于根据所述第二创建单元创建的信息将所述第二客户端的页面和页面逻辑显示在所述第一客户端的页面上。
在一个实施例中,所述第一客户端存储有软件开发包SDK,所述SDK中存储有用于创建所述第二客户端的上下文对象的创建代码;
所述第二创建单元包括:
第一获取子单元,用于通过所述接口从所述SDK中获取所述创建代码;
添加子单元,用于将所述第一客户端的名称添加在所述第一获取子单元获取的创建代码中;
第一执行子单元,用于执行所述添加子单元添加所述名称后的所述创建代码,以创建包括所述第二客户端的上下文对象和所述第一客户端的名称的信息。
在一个实施例中,所述第一客户端还存储有jar包;
所述第一获取子单元具体用于:
建立所述接口与所述jar包的连接;
通过所述jar包与所述SDK的映射关系,从所述SDK中获取所述创建代码。
在一个实施例中,所述SDK中还存储有用于调用所述第二客户端的代码的调用代码;
所述显示单元包括:
建立子单元,用于当检测到用于将所述第二客户端的页面和页面逻辑显示在所述第一客户端的页面上的显示指令时,根据所述信息建立所述接口与所述jar包的连接;
第二获取子单元,用于通过所述建立子单元建立连接的所述jar包与所述SDK的映射关系,从所述SDK中获取所述调用代码;
第二执行子单元,用于执行所述第二获取子单元获取的调用代码,以获取所述第二客户端的代码;
第三执行子单元,用于在所述第一客户端中执行所述第二执行子单元获取的第二客户端的代码,以将所述第二客户端的页面和页面逻辑显示在所述第一客户端的页面上。
在一个实施例中,所述装置还包括:
分配单元,用于将所述第一客户端的显示区域中的目标区域分配给所述第二客户端;
所述显示单元,具体用于根据所述信息将所述第二客户端的页面和页面逻辑显示在所述分配单元分配的目标区域上。
本发明实施例第三方面公开一种电子设备,包括:处理器、存储器、通信接口和总线;
所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;
所述存储器存储可执行程序;
所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行一种信息显示方法;
其中,所述信息显示方法包括:
创建第一客户端的接口;
通过所述接口创建包括第二客户端的上下文对象和所述第一客户端的名称的信息;
根据所述信息将所述第二客户端的页面和页面逻辑显示在所述第一客户端的页面上。
本发明实施例中,创建第一客户端的接口,通过该接口创建包括第一客户端的名称和第二客户端的上下文对象的信息,根据该信息将第二客户端的页面和页面逻辑显示在第一客户端的页面和页面逻辑,可见,第二客户端的上下文对象是创建的,而不是从第一客户端获取的,因此,不需要启动第二客户端,从而可以节约功耗。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种信息显示方法的流程示意图;
图2是本发明实施例公开的另一种信息显示方法的流程示意图;
图3是本发明实施例公开的一种信息显示装置的结构示意图;
图4是本发明实施例公开的另一种信息显示装置的结构示意图;
图5是本发明实施例公开的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种信息显示方法、装置及电子设备,用于解决一个应用显示另一个应用的页面和页面逻辑时需要两个应用同时运行的问题。以下分别进行详细说明。
请参阅图1,图1是本发明实施例公开的一种信息显示方法的流程示意图。其中,该信息显示方法是从手机、平板电脑等安装有第一客户端和第二客户端的电子设备的角度来描述的。如图1所示,该信息显示方法可以包括以下步骤。
101、创建第一客户端的接口。
本实施例中,当用户需要将第二客户端的页面和页面逻辑显示在第一客户端的页面上时,用户可以通过操作电子设备,使电子设备创建第一客户端的接口,即可以使第一客户端提供一个ProxyClient类,该ProxyClient类提供一个接口。
102、通过该接口创建包括第二客户端的上下文对象和第一客户端的名称的信息。
本实施例中,第一客户端可以存储有软件开发包(Software Development Kit,SDK),该SDK中存储有可以创建第二客户端的上下文对象(即Context对象)的创建代码。因此,在创建了第一客户端的接口之后,将通过该接口创建包括第二客户端的上下文对象和第一客户端的名称的信息,即通过该接口从SDK中获取该创建代码,并将第一客户端的名称添加在该创建代码中,之后将执行添加了名称后的该创建代码,可以得到包括第二客户端的上下文对象和第一客户端的名称的信息,该信息即包括第一客户端的名称的第二客户端的上下文对象,是通过对第二客户端的上下文对象进行createPackageContext(),并传入第一客户端的名称得到。
本实施例中,第一客户端还存储有jar包,jar包与SDK存在映射关系,其中,SDK中存储的是程序代码,如果需要从SDK中获取某一个功能的程序代码,则必须了解这个功能的程序代码,才能从SDK中存储的代码中获取到这个功能的代码,以致获取效率较低。因此,为了提高代码的获取效率,引入jar包括,jar包中包括SDK中每部分代码的功能名称,且这些功能名称与SDK中相应的代码之间存在一一映射关系,可以通过jar包中的功能名称快速的获取到SDK中的代码。因此,通过接口从SDK中获取创建代码,即建立接口与jar包的连接,通过jar包与SDK的映射关系,从SDK中快速获取创建代码。
103、根据该信息将第二客户端的页面和页面逻辑显示在第一客户端的页面上。
本实施例中,SDK中还存储有用于调用第二客户端的代码的调用代码,通过该接口创建得到包括第二客户端的上下文对象和第一客户端的名称的信息之后,将根据该信息将第二客户端的页面和页面逻辑显示在第一客户端的页面上,即当检测到用于将第二客户端的页面和页面逻辑显示在第一客户端的页面上的显示指令时,根据该信息(即包括第一客户端的名称的第二客户端的上下文对象)建立接口与jar包的连接,通过jar包与SDK的映射关系,从SDK中快速获取调用代码,执行该调用代码,以获取第二客户端的代码,在第一客户端中执行第二客户端的代码,以便将第二客户端的页面和页面逻辑显示在第一客户端的页面上。其中,页面逻辑是根据对页面的操作进行的响应,例如:当页面上的一个信息被点击时,将在目标区域显示这个信息的详细内容。
在一个实施例中,还需要从第一客户端的显示区域中选取目标区域,并将目标区域分配给第二客户端,以便将第二客户端的页面和页面逻辑显示在第一客户端的页面的目标区域上。
在图1所描述的信息显示方法中,创建第一客户端的接口,通过该接口创建包括第一客户端的名称和第二客户端的上下文对象的信息,根据该信息将第二客户端的页面和页面逻辑显示在第一客户端的页面和页面逻辑,可见,第二客户端的上下文对象是创建的,而不是从第一客户端获取的,因此,不需要启动第二客户端,从而可以节约功耗。
请参阅图2,图2是本发明实施例公开的另一种信息显示方法的流程示意图。其中,该信息显示方法是从安装在手机、平板电脑等电子设备中的第一客户端的角度来描述的。如图2所示,该信息显示方法可以包括以下步骤。
201、第一客户端创建接口。
本实施例中,当第一客户端需要将第二客户端的页面和页面逻辑显示在第一客户端的页面上时,第一客户端将创建接口,即第一客户端提供一个ProxyClient类,该ProxyClient类提供一个接口(IProxy)。
202、第一客户端通过该接口创建包括第二客户端的上下文对象和第一客户端的名称的信息。
本实施例中,第一客户端可以存储有SDK,该SDK中存储有可以创建第二客户端的上下文对象的创建代码。因此,第一客户端创建了接口之后,将通过该接口创建包括第二客户端的上下文对象和第一客户端的名称的信息,即通过该接口从SDK中获取该创建代码,并将第一客户端的名称添加在该创建代码中,之后执行添加了该名称后的该创建代码,可以得到包括第二客户端的上下文对象和第一客户端的名称的信息,该信息即包括第一客户端的名称的第二客户端的上下文对象,该信息具有使第二客户端的代码在第一客户端上执行的功能,可以通过对第二客户端的上下文对象进行createPackageContext(),并传入第一客户端的名称得到。
本实施例中,第一客户端还存储有jar包,jar包与SDK存在映射关系,其中,SDK中存储的是程序代码,如果需要从SDK中获取某一个功能的程序代码,则必须清除这个功能的程序代码,才能从SDK中存储的代码中获取到这个功能的代码,以致获取效率较低。因此,为了提高代码的获取效率,引入jar包括,jar包中包括SDK中每部分代码的功能名称,且这些功能名称与SDK中相应的代码之间存在一一映射关系,可以通过jar包中的功能名称快速的获取到SDK中的代码。因此,通过接口从SDK中获取创建代码,即建立接口与jar包的连接,通过jar包与SDK的映射关系,从SDK中快速获取创建代码。
203、第一客户端根据该信息显示第二客户端的页面和页面逻辑。
本实施例中,SDK中还存储有用于调用第二客户端的代码的调用代码,通过该接口创建得到包括第二客户端的上下文对象和第一客户端的名称的信息之后,将根据该信息显示第二客户端的页面和页面逻辑,即当检测到用于显示第二客户端的页面和页面逻辑的显示指令时,根据该信息(即包括第一客户端的名称的第二客户端的上下文对象)建立接口与jar包的连接,通过jar包与SDK的映射关系,从SDK中获取调用代码,执行该调用代码,以获取第二客户端的代码,之后执行第二客户端的代码,以便显示第二客户端的页面和页面逻辑。
在一个实施例中,还需要为第二客户端分配目标区域,以便将第二客户端的页面和页面逻辑显示在第一客户端的页面的目标区域上。
在图2所描述的信息显示方法中,第一客户端创建接口,通过该接口创建包括第一客户端的名称和第二客户端的上下文对象的信息,根据该信息显示第二客户端的页面和页面逻辑,可见,第二客户端的上下文对象是第一客户端创建的,而不是从第二客户端获取的,因此,不需要启动第二客户端,从而可以节约功耗。
请参阅图3,图3是本发明实施例公开的一种信息显示装置的结构示意图。其中,该信息显示装置可以为安装有第一客户端和第二客户端的手机、平板电脑等电子设备。如图3所示,该信息显示装置可以包括:
第一创建单元301,用于创建第一客户端的接口;
第二创建单元302,用于通过第一创建单元301创建的接口创建包括第二客户端的上下文对象和第一客户端的名称的信息;
显示单元303,用于根据第二创建单元302创建的信息将第二客户端的页面和页面逻辑显示在第一客户端的页面上。
在图3所描述的信息显示装置中,创建第一客户端的接口,通过该接口创建包括第一客户端的名称和第二客户端的上下文对象的信息,根据该信息将第二客户端的页面和页面逻辑显示在第一客户端的页面和页面逻辑,可见,第二客户端的上下文对象是创建的,而不是从第一客户端获取的,因此,不需要启动第二客户端,从而可以节约功耗。
请参阅图4,图4是本发明实施例公开的另一种信息显示装置的结构示意图。其中,该信息显示装置可以为安装有第一客户端和第二客户端的手机、平板电脑等电子设备。图4所示的信息显示装置是图3所示的信息显示装置优化得到的,其中:
第一客户端存储有SDK,SDK中存储有用于创建第二客户端的上下文对象的创建代码;
第二创建单元302可以包括:
第一获取子单元3021,用于通过该接口从SDK中获取该创建代码;
添加子单元3022,用于将第一客户端的名称添加在第一获取子单元3021获取的创建代码中;
第一执行子单元3023,用于执行添加子单元3022添加该名称后的创建代码,以创建包括第二客户端的上下文对象和第一客户端的名称的信息。
作为一种可能的实施方式,第一客户端还存储有jar包;
第一获取子单元3021具体用于:
建立该接口与jar包的连接;
通过jar包与SDK的映射关系,从SDK中获取该创建代码。
作为一种可能的实施方式,SDK中还存储有用于调用第二客户端的代码的调用代码;
显示单元303可以包括:
建立子单元3031,用于当检测到用于将第二客户端的页面和页面逻辑显示在第一客户端的页面上的显示指令时,根据该信息建立该接口与jar包的连接;
第二获取子单元3032,用于通过建立子单元3031建立连接的jar包与SDK的映射关系,从SDK中获取该调用代码;
第二执行子单元3033,用于执行第二获取子单元3032获取的调用代码,以获取第二客户端的代码;
第三执行子单元3034,用于在第一客户端中执行第二执行子单元3034执行获取的第二客户端的代码,以将第二客户端的页面和页面逻辑显示在第一客户端的页面上。
作为一种可能的实施方式,该信息显示装置还可以包括:
分配单元304,用于将第一客户端的显示区域中的目标区域分配给第二客户端;
显示单元303,具体用于根据该信息将第二客户端的页面和页面逻辑显示在分配单元304分配的目标区域上。
在图4所描述的信息显示装置中,创建第一客户端的接口,通过该接口创建包括第一客户端的名称和第二客户端的上下文对象的信息,根据该信息将第二客户端的页面和页面逻辑显示在第一客户端的页面和页面逻辑,可见,第二客户端的上下文对象是创建的,而不是从第一客户端获取的,因此,不需要启动第二客户端,从而可以节约功耗。
请参阅图5,图5是本发明实施例公开的一种电子设备的结构示意图。其中,该电子设备可以为安装有第一客户端和第二客户端的手机、平板电脑等。如图5所示,该电子设备可以包括处理器501、存储器502、通信接口503和总线504,存储器502可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。可选地,存储器502还可以是至少一个位于远离前述处理器501的存储装置。处理器501、存储器502和通信接口503通过总线504连接并完成相互间的通信;通信接口503用于与其它设备进行通信;存储器存储可执行程序;处理器501通过读取存储器502中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行一种信息显示方法;
该信息显示方法可以包括:
创建第一客户端的接口;
通过该接口创建包括第二客户端的上下文对象和第一客户端的名称的信息;
根据该信息将第二客户端的页面和页面逻辑显示在第一客户端的页面上。
在一个实施例中,该电子设备还可以包括输入装置505,如为触摸屏、按键、话筒等,输出装置506,如显示屏、话筒等,其中:
输入装置505,用于接收用户输入的信息;
输出装置506,用于输出信息。
在图5所描述的电子设备中,创建第一客户端的接口,通过该接口创建包括第一客户端的名称和第二客户端的上下文对象的信息,根据该信息将第二客户端的页面和页面逻辑显示在第一客户端的页面和页面逻辑,可见,第二客户端的上下文对象是创建的,而不是从第一客户端获取的,因此,不需要启动第二客户端,从而可以节约功耗。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-only memory,ROM)、随机存取器(random access memory,RAM)、磁盘或光盘等。
以上对本发明实施例公开的信息显示方法、装置及电子设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。