获取资源的方法、装置、电子设备及可读介质转让专利

申请号 : CN201910555899.6

文献号 : CN110275723A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李朋林

申请人 : 北京字节跳动网络技术有限公司

摘要 :

本公开实施例提供了一种获取资源的方法、装置、电子设备及可读介质,包括:获取应用程序的资源配置文件,资源配置文件包括应用程序的第一资源的第一资源标识以及对应的下载地址,第一资源为满足预设条件的资源;根据应用程序的第一资源的第一资源标识以及对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储;接收资源调取指令,资源调取指令包括待调取资源的资源标识;基于待调取资源的资源标识确定待调取资源并加载。本公开实施例中,可以直接根据资源配置文件中对应的下载地址单独获取满足预设条件的资源,可以有效地减小安装包的体积。

权利要求 :

1.一种获取资源的方法,其特征在于,包括:

获取应用程序的资源配置文件,所述资源配置文件包括所述应用程序的第一资源的第一资源标识以及对应的下载地址,其中,所述第一资源为满足预设条件的资源;

根据所述应用程序的第一资源的第一资源标识以及对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储;

接收资源调取指令,所述资源调取指令包括待调取资源的资源标识;

基于所述待调取资源的资源标识确定待调取资源并加载。

2.根据权利要求1所述的方法,其特征在于,若终端设备已存储所述应用程序的第二资源的第二资源标识,所述方法还包括:根据已存储的所述应用程序的第二资源的第二资源标识和所述第一资源标识,确定所述第一资源标识中待更新的资源的标识;

根据所述待更新的资源的标识所对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储。

3.根据权利要求2所述的方法,其特征在于,所述根据已存储的所述应用程序的第二资源的第二资源标识和所述第一资源标识,确定所述第一资源标识中待更新的资源的标识,包括:将所述第二资源标识和所述第一资源标识进行比对,确定与所述第二资源标识不同的所述第一资源标识;

所述与所述第二资源标识不同的所述第一资源标识为待更新的资源的标识。

4.根据权利要求2所述的方法,其特征在于,所述资源配置文件中还包括所述应用程序的第一资源的内容标识,若所述第一资源标识中存在与所述第二资源标识相同的所述第一资源标识,所述确定所述第一资源标识中待更新的资源的标识,还包括:根据与所述第二资源标识相同的第一资源标识的内容标识和对应的第二资源标识的内容标识,确定所述第一资源标识中待更新的资源的标识。

5.根据权利要求1所述的方法,其特征在于,所述方法由终端设备执行,所述获取所述应用程序的资源配置文件,包括:向服务器发送资源配置文件获取请求,接收所述服务器在确定所述终端设备中的所述应用程序的资源发生更新时返回的资源配置文件;或者,接收所述服务器在确定所述终端设备中的所述应用程序的资源发生更新时返回的资源配置文件。

6.一种获取资源的装置,其特征在于,包括:

信息获取模块,用于获取应用程序的资源配置文件,所述资源配置文件包括所述应用程序的第一资源的第一资源标识以及对应的下载地址,其中,所述第一资源为满足预设条件的资;

资源获取模块,用于根据所述应用程序的第一资源的第一资源标识以及对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储;

指令接收模块,用于接收资源调取指令,所述资源调取指令包括待调取资源的资源标识;

资源调取模块,用于基于所述待调取资源的资源标识确定待调取资源并加载。

7.根据权利要求6所述的装置,其特征在于,若终端设备已存储所述应用程序的第二资源的第二资源标识,所述资源获取模块还用于:根据已存储的所述应用程序的第二资源的第二资源标识和所述第一资源标识,确定所述第一资源标识中待更新的资源的标识;

根据所述待更新的资源的标识所对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储。

8.根据权利要求7所述的装置,其特征在于,所述资源获取模块在根据已存储的所述应用程序的第二资源的第二资源标识和所述第一资源标识,确定所述第一资源标识中待更新的资源的标识时,具体用于:将所述第二资源标识和所述第一资源标识进行比对,确定与所述第二资源标识不同的所述第一资源标识;

所述与所述第二资源标识不同的所述第一资源标识为待更新的资源的标识。

9.一种电子设备,其特征在于,包括:

处理器和存储器;

所述存储器,用于存储计算机操作指令;

所述处理器,用于通过调用所述计算机操作指令,执行权利要求1至5中任一项所述的方法。

10.一种计算机可读介质,其特征在于,所述计算机可读介质存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现权利要求1至5中任一项所述的方法。

说明书 :

获取资源的方法、装置、电子设备及可读介质

技术领域

[0001] 本公开涉及数据处理技术领域,具体而言,本公开涉及一种获取资源的方法、装置、电子设备及可读介质。

背景技术

[0002] 现有技术中,用户安装一个应用程序时,通常是通过获取应用程序的安装包进而完成对应用程序的安装,而应用程序的安装包中会包括应用程序的资源文件,如大量的图片、动画、视频,此时可能会造成安装包体积较大。
[0003] 此外,在实际使用中,为了可以更好的满足用户的需求,研发人员会对应用程序进行更新,现有技术中,在需要更改或新增应用程序的某个资源时,需要重新发布新的安装包,该新的安装包中包括需要更新的资源,以及其它不需要更新的资源,然后用户获取新的安装包后进行重新安装,完整资源更新。显然,现有的资源更新方案会导致用户体验较差。

发明内容

[0004] 提供该发明内容部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该发明内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
[0005] 第一方面,本公开实施例提供了一种获取资源的方法,该方法包括:
[0006] 获取应用程序的资源配置文件,资源配置文件包括应用程序的第一资源的第一资源标识以及对应的下载地址,其中,第一资源为满足预设条件的资源;
[0007] 根据应用程序的第一资源的第一资源标识以及对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储;
[0008] 接收资源调取指令,资源调取指令包括待调取资源的资源标识;
[0009] 基于待调取资源的资源标识确定待调取资源并加载。
[0010] 第二方面,本公开实施例提供了一种获取资源的装置,该装置包括:
[0011] 信息获取模块,用于获取应用程序的资源配置文件,资源配置文件包括应用程序的第一资源的第一资源标识以及对应的下载地址,其中,第一资源为满足预设条件的资源;
[0012] 资源获取模块,用于根据应用程序的第一资源的第一资源标识以及对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储;
[0013] 指令接收模块,用于接收资源调取指令,资源调取指令包括待调取资源的资源标识;
[0014] 资源调取模块,用于基于待调取资源的资源标识确定待调取资源并加载。
[0015] 第三方面,本公开提供了一种电子设备,该电子设备包括处理器和存储器;
[0016] 存储器,用于存储计算机操作指令;
[0017] 处理器,用于通过调用计算机操作指令,执行如本公开实施例的第一方面的任一实施例中所示的方法。
[0018] 第四方面,本公开提供了一种计算机可读介质,该计算机可读介质存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如本公开实施例的第一方面的任一实施例中所示的方法。
[0019] 本公开实施例提供的技术方案带来的有益效果是:
[0020] 本公开实施例中,由于基于资源配置文件包括应用程序的第一资源的第一资源标识以及对应的下载地址,因此,在需要获取资源时可以直接根据资源配置文件中对应的下载地址下载资源即可,不需要像现有技术中重新发布新的版本,用户不需要重新安装,提升了用户体验。进一步的,由于获取应用程序的资源时是基于资源配置文件中的下载地址单独获取的,进而可以有效地减小安装包的体积。

附图说明

[0021] 结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
[0022] 图1为本公开的实施例中一种获取资源的方法的流程示意图;
[0023] 图2为本公开的实施例中一种获取资源的装置的结构示意图;
[0024] 图3为本公开的实施例中一种电子设备的结构示意图。

具体实施方式

[0025] 下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
[0026] 应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
[0027] 本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
[0028] 需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元一定为不同的装置、模块或单元,也并非用于限定这些装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
[0029] 需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
[0030] 本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
[0031] 在实际应用中,在将应用程序安装在终端设备上时,需要获取该应用程序相关的资源,如需要获取一些体积较大的图片、控件、动画、视频等相关的资源。目前,这些资源通常是包含在安装包中的,由于这些资源的体积较大,在将这些资源包含在安装包时会导致安装包的体积较大。并且在需要更改或新增应用程序的某个资源时,需要重新发布新的安装包,该新的安装包中包括需要更新的资源,以及其它不需要更新的资源,然后用户获取新的安装包后进行重新安装,导致用户体验较差。
[0032] 为了解决现有技术中存在的上述技术问题中的至少一个,本公开的实施例提供了一种获取资源的方法,如图1所示,该方法可以包括:
[0033] 步骤S110,获取应用程序的资源配置文件,资源配置文件包括应用程序的第一资源的第一资源标识以及对应的下载地址,其中,第一资源为满足预设条件的资源。
[0034] 其中,满足预设条件的资源具体为哪些资源,本公开实施例不做限定,如可以是体积大于预设阈值的资源,或不影响应用程序运行的资源,如该不影响应用程序运行的资源可以为应用程序的说明视频,当然在实际应中,满足预设条件的资源也可以是除去应用程序的运行代码之外的所有资源。而资源配置文件用中包括应用程序中满足预设条件的资源(即第一资源)的信息,在该配置文件中可以包括该应用程序的第一资源的第一资源标识,该第一资源标识用于标识具体为哪一个资源。此外,在该资源信息中还包括该应用程序的第一资源标识对应的下载地址,也就是说,基于每一个第一资源标识对应的下载地址,可以获取到对应的资源。
[0035] 在一示例中,假设应用程序A中满足预设条件的资源包括资源a、资源b和资源c,则应用程序A所获取到的资源配置文件中可以包括资源a的标识、资源b的标识和资源c的标识,以及资源a对应的下载地址、资源b对应的下载地址和资源c对应的下载地址。
[0036] 步骤S120,根据应用程序的第一资源的第一资源标识以及对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储。
[0037] 在实际应用中,资源配置文件中包括应用程序的所有资源中满足预设条件的资源的下载地址,进而在获取到资源配置文件后可以根据源配置文件中每个资源对应的地址下载每一个资源,然后将每一个资源以及对应的资源标识进行关联存储,以便知晓具体存储了哪些资源。其中,当终端设备第一次获取资源配置信息时,终端设备不存在已存储的满足预设条件的资源,此时根据资源配置文件将所有的资源下载并存储即可;若终端设备已经存储了满足预设条件的资源,在获取到资源配置文件之后,可以将所有已经存储的资源删除,并根据获取到的资源配置文件将所有满足预设条件的资源重新下载并存储即可,或者直接根据获取到的资源配置文件将所有满足预设条件的资源下载,若存在已经存储的资源,则将新下载的资源覆盖原本存储的资源。
[0038] 步骤S130,接收资源调取指令,资源调取指令包括待调取资源的资源标识;
[0039] 其中,资源调取指令表示想要调用资源,该资源调取指令中包括待调取资源的标识,用于标识具体需要调取哪个或哪些资源。
[0040] 步骤S150,基于待调取资源的资源标识确定待调取资源并加载。
[0041] 相应的,在接收到资源调取指令后,可以根据资源调取指令中包括的待调取资源的资源标识确定具体是哪个或哪些资源文后,将确定的待调取资源加载。其中,对于同一个资源,该资源的资源标识不变。
[0042] 在实际应用中,为了可以方便管理应用程序的资源,可以将每一个应用程序均配置一个用于管理该应用程序资源的插件,如可以配置一个资源管理中心,而所有与该应用程序有关的资源的下载、存储和调用等可以通过该资源管理中心来执行。
[0043] 本公开实施例中,由于基于资源配置文件包括应用程序的第一资源的第一资源标识以及对应的下载地址,因此,在需要获取资源时可以直接根据资源配置文件中对应的下载地址下载资源即可,不需要像现有技术中重新发布新的版本,用户不需要重新安装,提升了用户体验。进一步的,由于获取应用程序的资源时是基于资源配置文件中的下载地址单独获取的,进而可以有效地减小安装包的体积。
[0044] 在本公开实施例中,若终端设备已存储应用程序的第二资源的第二资源标识,方法还包括:
[0045] 根据已存储的应用程序的第二资源的第二资源标识和第一资源标识,确定第一资源标识中待更新的资源的标识;
[0046] 根据待更新的资源的标识所对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储。
[0047] 其中,待更新的资源可以包括新增加的资源、更改后的资源等。第二资源为终端设备根据之前接收到的资源配置文件(即在此次接收到的资源配置文件之前接收到的资源配置文件)中的下载地址已经下载且存储的资源,也就是说,当终端设备根据之前接收到的资源配置文件中第一资源标识对应的下载地址下载该资源文件且存储后,即为已存储的应用程序的第二资源。需要说明的是,同一个资源的标识只能有一个且不变,也就是说,对于同一个资源在资源配置文件的第一资源标识和被终端设备下载且存储后的第二资源标识是相同的。
[0048] 在实际应用中,在获取到资源配置文件后,由于同一个资源的标识只能有一个且不变,因此可以根据已存储的应用程序的第二资源的第二资源标识和第一资源标识,确定第一资源标识中待更新的资源的标识。
[0049] 在实际应用中,由于资源配置文件中可以包括应用程序的第一资源的第一资源标识以及对应的下载地址,因此在确定第一资源标识中待更新的资源的标识后,可以根据待更新的资源的标识与下载地址的对应关系确定待更新的资源的下载地址,然后根据确定的下载地址,获取到相应的资源。进一步的,可以将所获取的资源以及对应的资源标识进行关联存储。
[0050] 在本公开实施例中,根据已存储的应用程序的第二资源的第二资源标识和第一资源标识,确定第一资源标识中待更新的资源的标识,包括:
[0051] 将第二资源标识和第一资源标识进行比对,确定与第二资源标识不同的第一资源标识;
[0052] 与第二资源标识不同的第一资源标识为待更新的资源的标识。
[0053] 在实际应用中,由于同一个资源的标识是相同且不变的,因此在获取到资源配置文件后,可以将资源配置文件中所包括的每一个第一资源标识与已存储的第二资源标识进行比对,若是存在与第二资源标识不同的第一资源标识,则说明该应用程序新增了资源,此时可以将与第二资源标识不同的第一资源标识作为待更新的资源的标识。
[0054] 在一示例中,已存储的应用程序的第二资源的第二资源标识包括第二资源标识A、第二资源标识B和第二资源标识C,资源配置文件中包括的第一资源标识A、第一资源标识B、第一资源标识C、第一资源标识D和第一资源标识E。在获取到该应用程序的资源配置文件后,将资源配置文件中所包括的每个第一资源标识与已存储的第二资源标识进行比对后,确定存在第一资源标识D和第一资源标识E与已存储的第二资源标识不同,此时,可以将第一资源标识D和第一文件资源E作为待更新的资源的标识。
[0055] 其中,若终端设备是首次获取该应用程序对应的资源配置文件,此时不存在已存储的应用程序的第二资源的第二资源标识,则资源配置文件中包括的所有第一资源的第一资源标识均作为待更新的资源的标识。
[0056] 由于在本公开实施例中,在获取应用程序中满足预设条件的资源时是通过资源配置文件来获取的,并不是通过安装包的形式来获取,因此可以有效地减少安装包的体积;并且在获取资源时,是根据每个资源对应的下载地址单独获取的,可以有效的减少了因一次性通过安装包获取全部满足预设条件的资源时,因体积过大造成下载失败率较高的问题,以及可以有效的解决因在下载过程中下载失败导致全部资源不可用,需要重新获取的问题。
[0057] 在本公开实施例中,资源配置文件中还包括应用程序的第一资源的内容标识,若确定第一资源标识中存在与第二资源标识相同的第一资源标识;
[0058] 确定第一资源标识中待更新的资源的标识,还包括:
[0059] 根据与第二资源标识相同的第一资源标识的内容标识和对应的第二资源标识的内容标识,确定第一资源标识中待更新的资源的标识。
[0060] 在实际应用中,为了可以更好的满足用户的需求,通常会对应用程序的功能进行更新,实现功能更新的方式通常是将待更新的应用程序的某个或某些资源进行更改,为了使终端终端设备获知具体是哪个或哪些资源文件进行了更改,资源配置文件中还包括应用程序的第一资源的内容标识,该内容标识用于表征第一资源的内容,如第一资源为图片时,该第一资源的内容标识即用于表征该图片。当第一资源的内容发生变化时,用于表征该第一资源内容的内容标识自然也会发生改变。
[0061] 在实际应用中,由于同一个资源的标识是相同的,在对某些资源进行更改后,仅根据某些资源的标识无法确定哪些资源是被更改后的。也就是说,第一资源标识中与第二资源标识相同的第一资源标识可能是包括更改后的资源的标识。为了可以准确地确定出哪个或哪些资源是被更改后的,因此在本公开实施例中,还可以在确定出第一资源标识中与第二资源标识相同的第一资源标识后,可以将与第二资源标识相同的第一资源标识的内容标识与相同标识的第二资源的内容标识进行比对,若发生变化,此时则将内容标识发生变化的内容标识所对应的第一资源标识作为待更新的资源的标识。
[0062] 在一示例中,已存储的应用程序的第二资源包括第二资源A的第二资源标识a和第二资源A的内容标识0、第二资源B的第二资源标识b和第二资源B的内容标识0,以及第二资源C的第二资源标识c内容标识0,资源配置文件包括的第一资源标识A和第一资源标识a的内容标识0、第一资源标识B和第一资源标识b的内容标识0、以及第一资源标识C和第一资源标识c的内容标识1。在获取到该应用程序的资源配置文件后,将资源配置文件中所包括的每个第一资源标识与已存储的第二资源标识进行比对后,确定与第二资源标识相同的第一资源标识为第一资源标识a、第一资源标识b和第一资源标识c,此时,可以分别将第一资源标识a对应的内容标识与第二资源标识a对应的内容标识、第一资源标识b对应的内容标识与第二资源标识b对应的内容标识,以及第一资源标识c对应的内容标识与第二资源标识c对应的内容标识进行比对,发现第一资源标识c对应的内容标识与第二资源标识c对应的内容标识不同,说明第一资源标识c对应的第一资源C的内容发生了改变,即该第一资源C发生了更改,则可以将第一资源标识c作为待更新的资源的标识。
[0063] 在本公开实施例中,该资源获取的方法由终端设备执行,获取应用程序的资源配置文件,包括:
[0064] 向服务器发送资源配置文件获取请求,接收服务器在确定终端设备中的应用程序的资源发生更新时返回的资源配置文件;或者,
[0065] 接收服务器在确定终端设备中的应用程序的资源发生更新时返回的资源配置文件。
[0066] 在实际应用中,终端设备在获取应用程序的资源配置文件时,可以向服务发送资源配置文件获取请求已告知服务器当前想要获取资源配置文件,而终端设备向服务器发送资源配置文件获取请求的时机,可以是每次启动应用程序时,或者根据预设的周期向服务器发送资源配置文件获取请求;相应的,服务器在接收到该获取请求后,若确定该终端设备中的应用程序的第一资源相比上一次所获取的资源发生了更新,则将最新的资源配置文件返回至终端设备,该最新的资源配置文件中所包括的第一资源的第一资源标识为该终端设备中的应用程序当前最新的第一资源的标识,终端设备在接收到资源配置文件后,可以根据获取的资源配置文件获取相应的资源。
[0067] 当然,在实际应用中,服务器还可以对每一个终端设备每一次获取的资源配置文件均进行记录,当某一个终端设备的应用程序的第一资源相比与于上一次所获取的第一资源发生了更新时,可以直接向该终端设备发送最新的资源配置文件。
[0068] 在实际应用中,服务器在确定应用程序的资源是否发生更新时可以根据资源的版本号确定应用程序的资源是否发生更新。
[0069] 其中,资源的版本号用于表征该资源具体为哪一个版本,每一个版本的资源对应于一个资源配置文件,当同一个版本的资源发生更改时,该版本的资源对应的资源配置文件也会发生相应的更改。在实际应用中,可以根据实际需求和实际应用场景对资源进行不同的划分,如可以针对不同的操作系统、不同的国家、同一个应用程序的不同版本等对资源进行划分,形成多个不同版本的资源(即存在多个资源版本号),且不同版本的资源所对应的资源配置文件也是不同的。例如,对于同一个应用程序,资源的版本可以包括安卓1.0版本的版本、安卓2.0版本的版本、中文1.0版本的版本和英文1.0版本的版本等。
[0070] 在实际应用中,服务器可以记录每个终端设备每一次获取的资源配置文件的信息,如记录终端设备每一次所获取的资源的版本号。若当前该版本的资源相对于记录的上一次所获取的资源发生了更新,则将该版本的资源对应的最新资源配置文件发送至终端设备。
[0071] 在一示例中,假如服务器记录了终端设备A中上一次所获取的资源配置文件对应于的资源版本为安卓中文1.0版本的版本,若当前安卓中文1.0版本中的资源发生了更新,则将当前发生更新后的安卓中文1.0版本对应的资源配置文件发送至终端设备A。
[0072] 当然,在实际应用中为了减少服务器的数据处理量,终端设备可以在向服务器发送资源配置文件获取请求时,直接将终端设备上一次获取到的资源配置文件的信息发送至服务器,此时服务器可以根据获取到的资源配置文件的信息确定终端设备中的应用程序的资源版本,不再记录每一个终端设备获取资源配置文件的信息,进而可以有效地减少了服务器的数据处理量。
[0073] 在一示例中,假如终端设备中上一次所获取的资源配置文件对应的资源版本为安卓中文1.0版本的版本,则在向服务器发送资源配置文件获取请求时,将上一次获取到的资源配置文件的信息也发送至服务器;服务器在接收到获取请求后,可以根据接收到的上一次获取到的资源配置文件的信息可以确定出该终端设备中的应用程序的资源版本为安卓中文1.0版本的版本,若判断当前安卓中文1.0版本中的资源发生了更新,则将当前发生更新后的安卓中文1.0版本对应的资源配置文件发送至终端设备A。
[0074] 基于与图1中所示方法相同的原理,本公开的实施例中还提供了一种获取资源的装置20,如图2所示,该获取资源的装置20可以包括信息获取模块210、资源获取模块220、指令接收模块230和资源调取模块240,其中:
[0075] 信息获取模块210,用于获取应用程序的资源配置文件,资源配置文件包括应用程序的第一资源的第一资源标识以及对应的下载地址,其中,第一资源为满足预设条件的资源;
[0076] 资源获取模块220,用于根据应用程序的第一资源的第一资源标识以及对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储;
[0077] 指令接收模块230,用于接收资源调取指令,资源调取指令包括待调取资源的资源标识;
[0078] 资源调取模块240,用于基于待调取资源的资源标识确定待调取资源并加载。
[0079] 本申请可选的实施例中,若终端设备已存储应用程序的第二资源的第二资源标识,资源获取模块还用于:
[0080] 根据已存储的应用程序的第二资源的第二资源标识和第一资源标识,确定第一资源标识中待更新的资源的标识;
[0081] 根据待更新的资源的标识所对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储。
[0082] 本申请可选的实施例中,资源获取模块在根据已存储的应用程序的第二资源的第二资源标识和第一资源标识,确定第一资源标识中待更新的资源的标识时,具体用于:
[0083] 将第二资源标识和第一资源标识进行比对,确定与第二资源标识不同的第一资源标识;
[0084] 与第二资源标识不同的第一资源标识为待更新的资源的标识。
[0085] 本申请可选的实施例中,资源配置文件中还包括应用程序的第一资源的内容标识,若第一资源标识中存在与第二资源标识相同的第一资源标识,资源获取模块还用于:
[0086] 在确定第一资源标识中待更新的资源的标识时,根据与第二资源标识相同的第一资源标识的内容标识和对应的第二资源标识的内容标识,确定第一资源标识中待更新的资源的标识。
[0087] 本申请可选的实施例中,该方法由终端设备执行,信息获取模块在获取应用程序的资源配置文件时,具体用于:
[0088] 向服务器发送资源配置文件获取请求,接收服务器在确定终端设备中的应用程序的资源发生更新时返回的资源配置文件;或者,
[0089] 接收服务器在确定终端设备中的应用程序的资源发生更新时返回的资源配置文件。
[0090] 本公开实施例的获取资源的装置可执行本公开的实施例所提供的一种获取资源的方法,其实现原理相类似,本公开各实施例中的获取资源的装置中的各模块所执行的动作是与本公开各实施例中的获取资源的方法中的步骤相对应的,对于获取资源的装置的各模块的详细功能描述具体可以参见前文中所示的对应的获取资源的方法中的描述,此处不再赘述。
[0091] 基于与本公开的实施例中所示的方法相同的原理,本公开的实施例中还提供了一种电子设备,该电子设备可以包括但不限于:处理器和存储器;存储器,用于存储计算机操作指令;处理器,用于通过调用计算机操作指令执行实施例所示的方法。
[0092] 基于与本公开的实施例中所示的方法相同的原理,本公开的实施例中还提供了一种计算机可读介质,该计算机可读介质存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述实施例所示的方法,在此不再赘述。
[0093] 下面参考图3,其示出了适于用来实现本公开实施例的电子设备600的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图3示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0094] 电子设备包括:存储器以及处理器,其中,这里的处理器可以称为下文的处理装置601,存储器可以包括下文中的只读存储器(ROM)602、随机访问存储器(RAM)603以及存储装置608中的至少一项,具体如下所示:
[0095] 如图3所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备
600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
[0096] 通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图3示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
[0097] 特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
[0098] 需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
[0099] 在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText Transfer Protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
[0100] 上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
[0101] 可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0102] 附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0103] 描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
[0104] 本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
[0105] 在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0106] 根据本公开的一个或多个实施例,A1、本公开实施例提供一种获取资源的方法,包括:
[0107] 获取应用程序的资源配置文件,资源配置文件包括应用程序的第一资源的第一资源标识以及对应的下载地址,其中,第一资源为满足预设条件的资源;
[0108] 根据应用程序的第一资源的第一资源标识以及对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储;
[0109] 接收资源调取指令,资源调取指令包括待调取资源的资源标识;
[0110] 基于待调取资源的资源标识确定待调取资源并加载。
[0111] A2、根据A1的方法,若终端设备已存储应用程序的第二资源的第二资源标识,方法还包括:
[0112] 根据已存储的应用程序的第二资源的第二资源标识和第一资源标识,确定第一资源标识中待更新的资源的标识;
[0113] 根据待更新的资源的标识所对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储。
[0114] A3、根据A2的方法,根据已存储的应用程序的第二资源的第二资源标识和第一资源标识,确定第一资源标识中待更新的资源的标识,包括:
[0115] 将第二资源标识和第一资源标识进行比对,确定与第二资源标识不同的第一资源标识;
[0116] 与第二资源标识不同的第一资源标识为待更新的资源的标识。
[0117] A4、根据A2的方法,资源配置文件中还包括应用程序的第一资源的内容标识,若第一资源标识中存在与第二资源标识相同的第一资源标识,确定第一资源标识中待更新的资源的标识,还包括:
[0118] 根据与第二资源标识相同的第一资源标识的内容标识和对应的第二资源标识的内容标识,确定第一资源标识中待更新的资源的标识。
[0119] A5、根据A1的方法,方法由终端设备执行,获取应用程序的资源配置文件,包括:
[0120] 向服务器发送资源配置文件获取请求,接收服务器在确定终端设备中的应用程序的资源发生更新时返回的资源配置文件;或者,
[0121] 接收服务器在确定终端设备中的应用程序的资源发生更新时返回的资源配置文件。
[0122] 根据本公开的一个或多个实施例,B1、本公开实施例提供一种获取资源的装置,包括:
[0123] 信息获取模块,用于获取应用程序的资源配置文件,资源配置文件包括应用程序的第一资源的第一资源标识以及对应的下载地址,其中,第一资源为满足预设条件的资源;
[0124] 资源获取模块,用于根据应用程序的第一资源的第一资源标识以及对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储;
[0125] 指令接收模块,用于接收资源调取指令,资源调取指令包括待调取资源的资源标识;
[0126] 资源调取模块,用于基于待调取资源的资源标识确定待调取资源并加载。
[0127] B2、根据B1的装置,其特征在于,若终端设备已存储应用程序的第二资源的第二资源标识,资源获取模块还用于:
[0128] 根据已存储的应用程序的第二资源的第二资源标识和第一资源标识,确定第一资源标识中待更新的资源的标识;
[0129] 根据待更新的资源的标识所对应的下载地址,获取相应的资源,并将所获取的资源以及对应的资源标识进行关联存储。
[0130] B3、根据B2的装置,资源获取模块在根据已存储的应用程序的第二资源的第二资源标识和第一资源标识,确定第一资源标识中待更新的资源的标识时,具体用于:
[0131] 将第二资源标识和第一资源标识进行比对,确定与第二资源标识不同的第一资源标识;
[0132] 与第二资源标识不同的第一资源标识为待更新的资源的标识。
[0133] B4、根据B2的装置,资源配置文件中还包括应用程序的第一资源的内容标识,若第一资源标识中存在与第二资源标识相同的第一资源标识,资源获取模块还用于:
[0134] 在确定第一资源标识中待更新的资源的标识时,根据与第二资源标识相同的第一资源标识的内容标识和对应的第二资源标识的内容标识,确定第一资源标识中待更新的资源的标识。
[0135] B5、根据B1的装置,方法由终端设备执行,信息获取模块在获取应用程序的资源配置文件时,具体用于:
[0136] 向服务器发送资源配置文件获取请求,接收服务器在确定终端设备中的应用程序的资源发生更新时返回的资源配置文件;或者,
[0137] 接收服务器在确定终端设备中的应用程序的资源发生更新时返回的资源配置文件。
[0138] 根据本公开的一个或多个实施例,C1、本公开实施例提供一种电子设备,包括:
[0139] 处理器和存储器;
[0140] 存储器,用于存储计算机操作指令;
[0141] 处理器,用于通过调用计算机操作指令,执行A1至A5中任一项的方法。
[0142] 根据本公开的一个或多个实施例,D1、本公开实施例提供一种计算机可读介质,其特征在于,计算机可读介质有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现A1至A5中任一项的方法。
[0143] 以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
[0144] 此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
[0145] 尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。。