应用程序的换肤方法、装置及系统与流程

文档序号:11458502阅读:155来源:国知局
应用程序的换肤方法、装置及系统与流程

本公开涉及互联网技术领域,具体而言,涉及一种应用程序的换肤方法、换肤装置及换肤系统。



背景技术:

随着人们生活水平的提高,智能设备在工作和生活中变的越来越重要,例如:手机、平板电脑等。在使用过程中,这些智能设备通常会安装多种应用程序,以作为客户端设备与服务器进行通信,以便用户获取信息,实现不同的功能。

为了满足用户对视觉效果的要求,经常需要对应用程序的界面内的皮肤进行更换。现有技术中,需要将界面皮肤所需要的文本、图片等打包成一个文档作为皮肤文件存放在服务器中;用户在使用应用软件时,可选择自己需要的皮肤并从服务器下载对应的皮肤文件,加载该皮肤文件后即可实现换肤。

但现有的皮肤文件一般为静态资源,如文本、图片等,难以结合应用程序的运行状态的变化针对界面的皮肤进行更换;即当应用程序出现某一状态时,难以针对该状态对该界面部分界面元素进行换肤;要想实现换肤需要重新从服务端下载新的皮肤文件或修改应用程序,这会导致客户端设备与服务器的交互过于频繁,使系统性能降低,并增加了运维的工作量且降低了换肤的效率。

需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。



技术实现要素:

本公开的目的在于提供一种应用程序的换肤方法、换肤装置及换肤系统,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。

根据本公开的一个方面,提供一种应用程序的换肤方法,包括:

向服务器发送目标界面的换肤请求;

接收所述服务器响应所述换肤请求所发送的目标文件,所述目标文件包括界面文件和逻辑文件;

根据所述界面文件和逻辑文件为所述目标界面的目标界面元素换肤。

在本公开的一种示例性实施例中,为所述目标界面的目标界面元素换肤包括:

通过所述逻辑文件对所述目标界面元素的运行参数进行监控;

通过所述逻辑文件将所述运行参数与阈值进行比较;

通过所述逻辑文件根据比较结果,确定是否调用所述界面文件为所述目标界面元素换肤。

在本公开的一种示例性实施例中,通过所述逻辑文件对所述目标界面元素的运行参数进行监控,包括:

所述逻辑文件包括转换器,所述转换器对应对象为所述目标界面元素,通过所述转换器对所述目标界面元素的运行参数进行监控。

在本公开的一种示例性实施例中,确定是否调用界面文件为所述目标界面元素换肤,包括:

在所述运行参数大于所述阈值时,通过所述逻辑文件调用所述界面文件中的换肤元素为所述目标界面元素换肤。

在本公开的一种示例性实施例中,所述阈值和所述目标界面元素均有多个,且每个目标界面元素对应至少一个所述阈值。

在本公开的一种示例性实施例中,所述目标文件为经加密的压缩文件,根据所述界面文件和逻辑文件为所述目标界面的目标界面元素换肤,包括:

对所述目标文件进行解压和解密,得到所述界面文件和所述逻辑文件;

根据解压并解密后的所述界面文件和所述逻辑文件为所述目标界面的目标界面元素换肤。

根据本公开的一个方面,提供一种应用程序的换肤装置,包括:

发送单元,用于向服务器发送目标界面的换肤请求;

接收单元,用于接收服务器响应所述换肤请求所发送的目标文件,所述目标文件包括界面文件和逻辑文件;

执行单元,用于根据所述界面文件和逻辑文件为所述目标界面的目标界面元素换肤。

在本公开的一种示例性实施例中,所述执行单元,用于通过所述逻辑文件对所述目标界面元素的运行参数进行监控;通过所述逻辑文件将所述运行参数与阈值进行比较;通过所述逻辑文件根据比较结果,确定是否调用所述界面文件为所述目标界面元素换肤。

在本公开的一种示例性实施例中,所述逻辑文件包括转换器,所述转换器对应对象为所述目标界面元素,所述执行单元,用于通过所述转换器对所述目标界面元素的运行参数进行监控。

根据本公开的一个方面,提供一种应用程序的换肤系统,包括:

客户端设备,包括上述任意一项所述换肤装置;

服务器,用于存储所述目标文件;以及接收所述换肤请求,并响应所述换肤请求向所述客户端设备发送所述目标文件。

本公开的应用程序的换肤方法、换肤装置及换肤系统,由于从服务器获取的目标文件同时包括界面文件和逻辑文件,从而便于根据逻辑文件实现的业务逻辑进行自动换肤,满足需要动态调整界面的个性化复杂业务场景的要求,而界面文件可用于提供换肤所需要的元素。由此,避免了重新从服务器下载新的皮肤文件或修改应用程序进行换肤,使客户端设备与服务器免于因换肤而频繁交互,有利于提高设备性能,降低运维的工作量,并可提高换肤的效率。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示意性示出本公开应用程序的换肤方法一实施方式的流程图。

图2示意性示出确定是否为换肤后的目标界面的目标界面元素换肤的方法的一实施方式的流程图。

图3示意性示出本公开应用程序的换肤装置的方框图。

图4示意性示出本公开应用程序的换肤系统的方框图。

具体实施方式

现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。

此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

本示例实施方式中首先提供了一种方法,如图1,本示例实施方式的应用程序的换肤方法可以包括:

步骤s110、向服务器发送目标界面的换肤请求;

步骤s120、接收所述服务器响应所述换肤请求所发送的目标文件,所述目标文件包括界面文件和逻辑文件;

步骤s130、根据所述界面文件和逻辑文件为所述目标界面的目标界面元素换肤。

在本公开示例实施方式中,由于从服务器获取的目标文件同时包括界面文件和逻辑文件,使得可根据逻辑文件实现的业务逻辑进行自动换肤,满足需要动态调整界面的个性化复杂业务场景的要求,而界面文件可用于提供换肤所需要的换肤元素。由此,避免了重新从服务器下载新的皮肤文件或修改应用程序进行换肤,使客户端设备与服务器免于因换肤而频繁交互,有利于提高设备性能,降低运维的工作量,并可提高换肤的效率。

下面,将对本示例实施例中的应用程序的换肤方法的各步骤进行进一步的说明。

在步骤s110中,向服务器发送目标界面的换肤请求。

在本示例实施方式中,可由一客户端设备发送该换肤请求,该客户端设备可以是手机、平板电脑等可与服务器进行通信的终端设备;该客户端设备安装有应用程序,该应用程序可以是股票软件、即时通信软件,新闻资讯软件等,在此不对应用程序的类型作特殊限定;上述的目标界面可为该应用程序的一界面;服务器可为一具有存储和通信功能的设备,其可与上述客户端设备进行有线或无线的方式通信,并可接收客户端设备发送的上述换肤请求。

举例而言,客户端设备为手机,应用程序为一股票软件,当需要对该股票软件的界面进行换肤时,可由该手机向一远程的服务器发送上述目标界面的该换肤请求。

在步骤s120中,接收所述服务器响应所述换肤请求所发送的目标文件,所述目标文件包括界面文件和逻辑文件。

在本示例实施方式中,该服务器可存储多个目标文件,以形成一包括多个目标文件的皮肤库,其中,不同的目标文件与不同的界面皮肤对应;该服务器在接收到上述换肤请求后,可在该皮肤库内检索与该换肤请求相应的目标文件,并将该目标文件发送给上述客户端设备;上述目标文件可为一经过加密的压缩文件,以减小目标文件的占用空间,并提高安全性;当然,在本公开的其它示例实施方式中,该目标文件也可为只加密而不压缩,只压缩而不加密,或者既不压缩也不加密的文件。

上述界面文件可为xaml(extensibleapplicationmarkuplanguage,可扩展应用程序标记语言)文件,可将其存储在服务器,并在服务器进行维护;该界面文件可被该应用程序动态加载,且在加载该界面文件时,可使该目标界面的皮肤更新为与该界面文件或换肤元素对应的皮肤。其中,该界面文件可有一个或多个,各个界面文件还可包含一个或多个换肤元素,各个换肤元素可与上述目标界面的全部界面元素或部分界面元素对应,为目标界面全部或部分区域换肤;因而,可通过增加界面文件所包含的换肤元素的种类或增加界面文件的数量来扩大换肤的范围。

逻辑文件可为dll(dynamiclinklibrary,文件为动态链接库)文件,该逻辑文件可通过wpf(windowspresentationfoundation,windows呈现基础)技术中的类编译生成;该逻辑文件也可有多个,且多个逻辑文件可与上述界面文件一一对应的绑定,使得该界面文件所对应的皮肤可根据该逻辑文件实现自定义;该逻辑文件可被上述应用程序动态加载,在加载后,可实现预定的业务逻辑,例如:监测该应用程序的一运行参数,该运行参数在此不作限定,其可以是一动态变化且与目标界面的一目标界面元素关联的参数,通过加载该逻辑文件,可对该运行参数进行实时监控,并根据该运行参数的变化和上述界面文件更换与该逻辑文件对应的目标界面元素的皮肤,以便实现动态换肤;同时,可通过逻辑文件对原有界面的元素进行编辑,例如:将长方形图案改变为圆形图案等。由此,可免于重新下载皮肤文件。

在本示例实施方式中,上述界面文件和逻辑文件的关联方法如下:

创建一转换器,用于实现该逻辑文件的业务逻辑,该转换器可包括于该逻辑文件;

将该转换器加入界面文件的资源中;

将界面文件的换肤元素与该转换器绑定,同时,该转换器可与上述目标界面元素对应。

需要说明的是,上述关联方法仅为示例性说明,并不构成对界面文件和逻辑文件的限定,在本公开的其它实施方式中,还可以采用其它能起到相同作用的方法,在此不再赘述。

举例而言,可通过一安装有股票软件的手机接收上述目标文件,可通过该逻辑文件实时监测该报价板界面的“最新价”这一目标界面元素对应的当前值,并可根据该当前值的变化触发该逻辑文件的业务逻辑;根据该业务逻辑加载该界面文件,从而动态更换“最新价”的皮肤;该业务逻辑可为在当前值大于300时,“最新价”显示为“-”或者显示红色等起警示作用的皮肤效果,以提醒用户最新价已超过预定的最大值;其中,300为一预设的阈值。

在步骤s130中,根据所述界面文件和所述逻辑文件为所述目标界面换肤。

在本示例实施方式中,目标界面可为该应用程序的一界面,该界面可包括多个可作为目标界面元素的界面元素,如按钮、图标等;该应用程序可包括通信层和加载层,该通信层可与服务器进行通信,以发送上述换肤请求、接收上述目标文件、对该目标文件进行解压、解密和存储;该加载层可对接收到的在目标文件进行加载,即加载界面文件和逻辑文件。

在本示例实施方式中,在目标文件为经加密的压缩文件的情况下,为所述目标界面的目标界面元素换肤可以包括:

通过上述通信层对上述目标文件进行解压和解密;

将解压并解密后的目标文件存储在应用程序的指定目录下,并产生一接收到上述目标文件的通知;

在上述加载层接收到上述通知后,根据解压并解密后的目标文件为目标界面换肤,即根据界面文件和逻辑文件为目标界面的目标界面元素换肤。

在本示例实施方式中,如图2,为上述的目标界面的目标界面元素换肤可进一步包括:

步骤s1301、通过所述逻辑文件对所述目标界面元素的运行参数进行监控;

步骤s1302、通过所述逻辑文件将所述运行参数与阈值进行比较;

步骤s1303、通过所述逻辑文件根据比较结果,确定是否调用所述界面文件为所述目标界面元素换肤。

在本示例实施方式中,上述运行参数可视应用程序的目标界面的类型而定,例如,该应用程序为股票软件,该目标界面为报价板界面,则该运行参数可为股票的最新价、或停牌状态字段的数值等,在此不作限定。上述运行参数,可以是目标界面元素的当前显示的数值、状态,但本发明不限于此,该运行参数也可以表示目标界面元素的变化趋势,如,目标界面元素在一个周期内的上升或下降的速率等。对上述运行参数的监控可通过加载该逻辑文件实现,可参考上文中对逻辑文件的描述,在此不再赘述。上述比较结果可为该运行参数大于、小于或等于该阈值。其中,确定是否调用所述界面文件为所述目标界面元素换肤可以包括:

在该运行参数大于该阈值时,可通过该逻辑文件调用界面文件中的换肤元素为目标界面元素换肤。当然,还可以在运行参数小于或者等于该阈值的时候,为目标界面元素换肤,在此不做特殊限定。

在本示例实施方式中,上述阈值和目标界面元素均可有多个,且每个目标界面元素对应至少一个阈值,从而可通过将不同的运行参数与不同的阈值进行比较,根据同一个目标界面元素的不同运行参数进行换肤;其中,该阈值可由该逻辑文件在加载后运行的业务逻辑计算获得,也可作为参数传入到上述的逻辑文件的转换器中。上述的逻辑文件的转换器可以支持单值转换的接口或多值转换的接口,在实现多值转换的接口后,可支持外部参数传入,从而可将阈值作为外部参数传送至转换器中,应用更加灵活。当然,还可采用可获得该阈值的其它方式,在此不再列举。

在本示例实施方式中,界面文件为xaml文件时,可采用wpf技术中的xamlreade读取上述界面文件,用assemby.createinstance反射创建对象方法进行动态加载上述界面文件,即在完成后,即可为目标界面更换新皮肤;从而实现根据解压并解密后的目标文件为目标界面换肤。当然,上述动态加载界面文件的方法并不限于上述描述,还可以采用其它方式,在此不再一一列举。

需要说明的是,上述描述仅以对目标文件为经加密的压缩文件的情况进行说明,若目标文件未进行加密或压缩,则可相应的可省去对目标文件的解密或解压过程。

举例而言,对于上述安装有上述实施方式中的股票软件的手机来说,可通过上述通信层接收述目标文件,并对上述目标文件进行解压和解密,以得到可以加载的界面文件和逻辑文件;将解压并解密后的目标文件存储在该股票软件指定的目录下,并可产生一接收到上述目标文件的通知;上述加载层在接收到该通知后,可通过assembly.loadfrom加载上述逻辑文件,运行该逻辑文件的业务逻辑,获取上述股票软件的报价板界面的“最新价”这一目标界面元素对应的当前值;将当前值与该业务逻辑预设的阈值进行比较,即比较当前值与300的大小;在上述当前值大于300时,可采用xamlreade读取上述界面文件,并用assemby.createinstance反射创建对象方法进行动态加载该界面文件,自动将报价板界面“最新价”的皮肤更换为“-”。从而自动为该股票软件的报价板的全部界面更换新的皮肤。

本公开的换肤方法的应用场景并不限于上述示例性实施方式中的描述,在本公开的其它示例实施方式中,可通过逻辑文件监控商品b盘中的“停牌状态字段”,加载逻辑文件所实现的业务逻辑还可以是当该“停牌状态字段”为“停牌”时,返回字符串“-”,从而在接收到商品b盘的“停牌状态字段”数值为“停牌”时,将商品b盘的“最新价”动态实时显示为“-”,详细原理可参考上文。

下述为本发明装置的实施方式,可以用于执行本发明方法的实施方式。对于本发明装置实施方式中未披露的细节,请参照本发明方法实施方式。

本示例性实施方式还提供了一种应用程序的换肤装置,如图3,本实施方式的换肤装置可以包括发送单元1、接收单元2、执行单元3,其中:

发送单元1可以用于向服务器发送目标界面的换肤请求;

接收单元2可以用于接收服务器响应所述换肤请求所发送的目标文件,所述目标文件包括界面文件和逻辑文件;

执行单元3可以用于根据所述界面文件和逻辑文件为所述目标界面的目标界面元素换肤。

在本示例实施方式中,执行单元3还可以用于通过所述逻辑文件对所述目标界面元素的运行参数进行监控;通过所述逻辑文件将所述运行参数与阈值进行比较;通过所述逻辑文件根据比较结果,确定是否调用所述界面文件为所述目标界面元素换肤。

在本示例实施方式中,所述逻辑文件包括转换器,所述转换器对应对象为所述目标界面元素,执行单元3还可以用于通过所述转换器对所述目标界面元素的运行参数进行监控。

上述应用程序的换肤装置中各单元的具体细节已经在对应的虚拟对象运动控制方法中进行了详细描述,因此在此处不再赘述。

本示例性实施方式还提供了一种应用程序的换肤系统,如图4,本实施方式的换肤系统可以包括客户端设备4和服务器5,其中:

客户端设备4可以包括上述任一实施方式提供的换肤装置,即包括发送单元1、接收单元2、执行单元3,可参照上述换肤装置的是实施方式。

服务器5可以用于存储所述目标文件;以及接收所述换肤请求,并响应所述换肤请求向所述客户端设备5发送所述目标文件。

上述应用程序的换肤系统中各单元的具体细节已经在对应的虚拟对象运动控制方法中进行了详细描述,因此在此处不再赘述。

应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。

此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。

通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。

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