CN114860295A - 资源文件更新方法、装置、设备及可读存储介质 - Google Patents

资源文件更新方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN114860295A
CN114860295A CN202210503050.6A CN202210503050A CN114860295A CN 114860295 A CN114860295 A CN 114860295A CN 202210503050 A CN202210503050 A CN 202210503050A CN 114860295 A CN114860295 A CN 114860295A
Authority
CN
China
Prior art keywords
resource file
resource
package
difference
original
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210503050.6A
Other languages
English (en)
Inventor
赵易峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Vivo Mobile Communication Co Ltd
Original Assignee
Vivo Mobile Communication Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Vivo Mobile Communication Co Ltd filed Critical Vivo Mobile Communication Co Ltd
Priority to CN202210503050.6A priority Critical patent/CN114860295A/zh
Publication of CN114860295A publication Critical patent/CN114860295A/zh
Priority to PCT/CN2023/092793 priority patent/WO2023217086A1/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种资源文件更新方法、装置、设备及可读存储介质,属于通信技术领域。该方法包括:电子设备获取第一资源文件包,并根据所述第一资源文件包及电子设备内的原始资源包,得到第二资源文件包;其中,上述第二资源文件包包括:N个第一资源文件;上述第一资源文件包包括:至少一个差异资源文件,以及指示每个第一资源文件是否发生变化的第一指示信息;上述第一资源文件用于更新原始资源包中的原始资源文件,一个差异资源文件对应一个第一资源文件;每个差异资源文件用于指示:对应的第一资源文件相对于原始资源文件的差异信息。

Description

资源文件更新方法、装置、设备及可读存储介质
技术领域
本申请属于通信技术领域,具体涉及一种资源文件更新方法、装置、设备及可读存储介质。
背景技术
目前,当电子设备中安装的应用需要更新时,通常需要从服务器端下载新的资源文件,对该应用当前的资源文件进行更新。
在相关技术中,通常是服务器将新资源文件包和应用所使用的原始资源文件包视为二进制文件,通过差分算法得到新资源文件包和原始资源文件包对应的差异资源包,然后电子设备下载该差异资源包进行旧资源文件的更新。由于二进制文件通常会存在大面积、无规律地变动,因此,得到的差异资源包的数据量通常较大。如此,导致差异资源包的传输需要耗费较多网络流量。
发明内容
本申请实施例的目的是提供一种资源文件更新方法、装置、设备及可读存储介质,能够解决服务器需要进行的运算量较大,导致服务器的功耗较大的问题。
第一方面,本申请实施例提供了一种资源文件更新方法,该方法包括:电子设备获取第一资源文件包,并根据所述第一资源文件包及电子设备内的原始资源包,得到第二资源文件包;其中,上述第二资源文件包包括:N个第一资源文件;上述第一资源文件包包括:至少一个差异资源文件,以及指示每个第一资源文件是否发生变化的第一指示信息;上述第一资源文件用于更新原始资源包中的原始资源文件,一个差异资源文件对应一个第一资源文件;每个差异资源文件用于指示:对应的第一资源文件相对于原始资源文件的差异信息。
第二方面,本申请实施例提供了一种资源文件更新装置,该装置包括:获取模块和确定模块,其中:上述获取模块,用于获取第一资源文件包;上述确定模块,用于根据获取模块获取的第一资源文件包及所述电子设备内的原始资源包,得到第二资源文件包;其中,上述第二资源文件包包括:N个第一资源文件;上述第一资源文件包包括:至少一个差异资源文件,指示每个第一资源文件是否发生变化的第一指示信息;上述第一资源文件用于更新原始资源包中的原始资源文件;一个差异资源文件对应一个第一资源文件;每个差异资源文件用于指示:对应的第一资源文件相对于原始资源文件的差异信息。
第三方面,本申请实施例提供了一种资源文件更新方法,该方法包括:服务器根据第二资源文件包,生成第一资源文件包,并电子设备发送第一资源文件包;其中,上述第二资源文件包包括:N个第一资源文件;上述第一资源文件用于更新所述电子设备中的原始资源文件;上述第一资源文件包包括:至少一个差异资源文件,第一指示信息;上述第一指示信息用于指示每个第一资源文件是否发生变化。
第四方面,本申请实施例提供了一种资源文件更新装置,该装置包括:生成模块和发送模块,其中:上述生成模块,用于根据第二资源文件包,生成第一资源文件包;上述发送模块,用于向电子设备发送生成模块生成的第一资源文件包;其中,上述第二资源文件包包括:N个第一资源文件;上述第一资源文件用于更新电子设备中的原始资源文件;上述第一资源文件包包括:至少一个差异资源文件,第一指示信息;上述第一指示信息用于指示至少一个第一资源文件是否发生变化。
第五方面,本申请实施例提供了一种服务器,该服务器包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
第六方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第三方面所述的方法的步骤。
第七方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法或者实现如第三方面所述的方法的步骤。
第八方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法。
第九方面,本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面所述的方法。
在本申请实施例中,电子设备获取第一资源文件包,并根据第一资源文件包以及电子设备内的原始资源包,得到第二资源文件包。其中,上述第二资源文件包包括:N个第一资源文件,上述第一资源文件包包括:至少一个差异资源文件,以及指示每个所述第一资源文件是否发生变化的第一指示信息;上述第一资源文件用于更新原始资源包中的原始资源文件。通过该方法,电子设备可以获取至少一个差异资源文件,并基于指示每个第一资源文件是否发生变化的指示信息,通过至少一个差异资源文件和原始资源包中的原始资源文件,还原得到每个第一资源文件,而不需要下载整个差异资源包并对整个差异资源包进行解析,从而节省了下载资源包所消耗的流量,并有效减少资源升级时的运算量,进而提高资源文件的升级速度。
附图说明
图1为本申请实施例提供的资源文件更新方法的流程图之一;
图2为本申请实施例提供的资源文件更新方法的示意图之一;
图3为本申请实施例提供的资源文件更新方法的示意图之二;
图4为本申请实施例提供的资源文件更新方法的流程图之二;
图5为本申请实施例提供的资源文件更新方法的示意图之三;
图6为本申请实施例提供的交互方法的流程图;
图7为本申请实施例提供资源文件更新装置的结构示意图之一;
图8为本申请实施例提供资源文件更新装置的结构示意图之二;
图9为本申请实施例提供的电子设备的结构示意图;
图10为本申请实施例提供的电子设备的硬件结构示意图;
图11为本申请实施例提供的服务器的硬件结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的资源文件更新方法进行详细地说明。
本申请实施例提供一种资源文件更新方法,图1示出了本申请实施例提供的资源文件更新方法的流程图。如图1所示,本申请实施例提供的资源文件更新方法可以包括下述的步骤201和步骤202:
步骤201:电子设备获取第一资源文件包。
其中,上述第一资源文件包包括:
至少一个差异资源文件;
指示每个第一资源文件是否发生变化的第一指示信息。
在本申请实施例中,一个差异资源文件对应一个第一资源文件;
在本申请实施例中,每个差异资源文件用于指示:对应的第一资源文件相对于原始资源文件的差异信息。
在本申请实施例中,上述第一资源文件为用于更新电子设备的原始资源文件的新资源文件。
可选地,上述原始资源文件为电子设备中未更新的资源文件。示例性地,该原始资源文件可以为电子设备的系统资源文件;或者,为电子设备中的应用的资源文件。例如,该原始资源文件可以为电子设备中的应用1的当前使用的未更新的应用资源文件。
在本申请实施例中,上述第一指示信息包括:每个第一资源文件的文件标识,每个第一资源文件的唯一路径标识(URL)以及每个第一资源文件的变化标记。
可选地,该变化标记用于指示第一资源文件的是否发生变化。可选地,该变化标记的值可以为逻辑值真(即true)和逻辑值假(即false)来表示;或者,上述变化标记的值可以用0和1来表示。
示例性地,假设资源文件1的变化标记的值为真,表征该资源文件1发生变化,资源文件2的变化标记的值为假,表征该资源文件2未发生变化(也就是说与该资源文件2对应的原始资源文件相同);示例性地,资源文件1的变化标记的值为1,表征该资源文件1发生变化,资源文件2的变化标记的值为0,表征该第一资源文件未发生变化。
可选地,上述每个第一资源文件的文件标识可以用:项目(即Item)表示,其中,一个项目下包括:一个第一资源文件的URL,和,一个第一资源文件的变化标记。
例如,如图2所示,第一指示信息中依次包含:项目1,项目2和项目3,其中,项目1中包括:资源文件的1唯一路径标识和变化标记,项目2中包括:资源文件的2唯一路径标识和变化标记,项目3中包括:资源文件的3唯一路径标识和变化标记。
需要说明的是,图2中,项目1标识的资源文件的路径为A,项目2标识的资源文件的路径为B,项目3标识的资源文件的路径为C。上述A、B、C仅是用于表示唯一路径标识,不代表实际的唯一路径标识。上述项目可以包括多个,图2中是以三个为示例进行说明。
可以理解的是,上述项目用于标识相应的资源文件,上述唯一路径标识用于查询对应的资源文件,上述变化标记表征对应的资源文件是否发生变化,示例地,图2中,变化标记为1,表征资源文件发生变化,变化标记为0,表征资源文件未发生变化。
可选地,在本申请实施例中,电子设备可以接收服务器发送的第一资源文件包。
步骤202:电子设备根据第一资源文件包及电子设备内的原始资源包,得到第二资源文件包。
其中,上述第二资源文件包包括:N个第一资源文件,N为正整数;
在本申请实施例中,上述原始资源包为未更新或者待更新的资源包,该原始资源包包括上述原始资源文件。
在本申请实施例中,上述第一资源文件用于更新上述原始资源包中的原始资源文件。
在本申请实施例中,电子设备可以根据每个第一资源文件对应的第一指示信息,通过上述至少一个差异资源文件,以及原始资源包中的原始资源文件,还原得到每个第一资源文件(即新资源文件)。
可选地,在本申请实施例中,电子设备在得到第二资源文件包之后,可以根据该第二资源文件包对电子设备内的原始资源文件包进行更新。
示例性地,在对电子设备中的第一应用的原始资源文件包进行更新时,电子设备可以将第一应用的原始资源文件,替换为该第二资源文件包,从而实现对第一应用的原始资源文件包的升级。
在本申请实施例提供的资源文件更新方法中,电子设备获取第一资源文件包,并根据第一资源文件包以及电子设备内的原始资源包,得到第二资源文件包。其中,上述第二资源文件包包括:N个第一资源文件,上述第一资源文件包包括:至少一个差异资源文件,以及指示每个所述第一资源文件是否发生变化的第一指示信息;上述第一资源文件用于更新原始资源包中的原始资源文件。通过该方法,电子设备可以获取至少一个差异资源文件,并基于指示每个第一资源文件是否发生变化的指示信息,通过至少一个差异资源文件和原始资源包中的原始资源文件,还原得到每个第一资源文件,而不需要下载整个差异资源包并对整个差异资源包进行解析,从而节省了下载资源包所消耗的流量,并有效减少资源升级时的运算量,进而提高资源文件的升级速度。
可选地,在本申请实施例中,上述第一资源文件包还包括:校验信息。
可选地,电子设备在检测第一资源文件包中的校验信息正确的情况下,再基于获取的第一资源文件包和原始资源包,还原得到至少一个新资源文件,如此,能够确保在获取到的第一资源文件包中的信息未被篡改的情况下,还原得到安全可靠的资源文件,从而保证操作的安全性。
可选地,在本申请实施例中,上述步骤202可以包括以下步骤202a或步骤202b:
步骤202a:在指示信息指示目标第一资源文件未发生变化的情况下,将原始资源包中目标第一资源文件对应的原始资源文件,作为目标第一资源文件。
步骤202b:在指示信息指示目标第一资源文件发生变化的情况下,根据原始资源包中目标第一资源文件对应的原始资源文件,和目标第一资源文件对应的差异资源文件,得到目标第一资源文件。
其中,上述目标第一资源文件为上述N个第一资源文件中的一个或多个资源文件。
示例性地,对于有变化的第一资源文件,可以根据该第一资源文件的URL从原始资源包里取出其旧(原始)资源文件个体,然后结合第一资源文件包中,该第一资源文件对应的差异资源文件内记录的个体差异信息,还原出新资源文件个体(即第一资源文件);对于无变化的第一资源,可以根据该第一资源文件的URL从旧资源包中取出其旧资源文件个体,并将该旧资源文件个体作为新资源文件个体(即第一资源文件)。
例如,新的资源文件4为发生变化的新资源文件,则根据该资源文件4对应的差异资源文件和对应的原始资源文件,还原得到该新的资源文件4。
再例如,新的资源文件5为未发生变化的新资源文件,则直接将该资源文件5对应的原始资源文件,作为该新的资源文件5。
具体地,电子设备可以对第一资源文件对应的原始资源文件,和该第一资源文件对应的差异资源文件进行差分还原处理,得到新资源文件个体。
需要说明的是,差分还原处理的具体实现方式可以参考相关技术,本申请实施例对此不再赘述。
需要说明的是,用于更新应用的原始资源文件包的新资源文件包(即第二资源文件包),它往往是替换或者增删一些的小的资源文件,而不是大面积、无规律地变动。如此,电子设备可以针对发生变化的新资源文件,结合其旧资源文件和差异资源文件进行还原,得到该新资源文件,针对未发生变化的新资源文件,直接从旧资源包中取出对应的旧资源文件作为新资源文件,从而提高得到新资源文件的效率。
进一步可选地,在本申请实施例中,上述第一资源文件包还包括:第二资源文件包中的N个第一资源文件的排序顺序的顺序信息;
可选地,上述步骤202可以包括以下步骤202c:
步骤202c:电子设备基于至少一个差异资源文件和原始资源包中的原始资源文件,按照排序顺序,得到上述N个第一资源文件。
示例性地,上述排序顺序为用户自行设置的顺序。例如,用户可以对至少一个资源文件进行排序,将需要频繁访问的第一资源文件排在前面,或者,上述排序顺序为系统默认的排序顺序。
示例性地,电子设备可以按照上述排序顺序,依次对每个的第一资源文件进行还原。
需要说明的是,第一设备可以按照N个第一资源文件的排序顺序,来逐个还原每个第一资源文件。由于顺序靠前的第一资源文件会被先还原,因此其在被还原后会被存放在新资源文件包内靠前的位置。因此可以将需要频繁访问的资源文件排在前面。如此,电子设备后续在运行应用程序时,能够快速访问到这些需要频繁访问的资源文件,从而访问资源的性能会得到提升。
进一步可选地,上述步骤202c可以包括以下步骤202c1或者步骤202c2:
步骤202c1:针对排序顺序中的第i位:在第i位对应的第一资源文件未发生变化的情况下,将第i位对应的所述原始资源文件,作为第i位对应的第一资源文件;
步骤202c2:针对排序顺序中的第i位:在第i位对应的第一资源文件发生变化的情况下,基于第i位对应差异资源文件和原始资源文件,得到第i位对应的第一资源文件。
其中,i∈[1,2,……,N]。
可选地,上述第一指示信息中还可以包括上述顺序信息。
需要说明的是,在第一指示信息包括上述顺序信息的情况下,该第一指示信息也可以称为顺序控制信息。
示例性地,由于第一指示信息中的一个项目标识一个第一资源文件,因此电子设备可以根据上述至少一个项目的排序顺序,来确定第一资源文件的排序顺序。需要说明的是,对于项目的解释说明可以参见上文,此处不再赘述。
示例性地,电子设备可以根据N个项目的排序顺序,遍历该N个项目,并根据每个项目下的URL,获取该项目标识(即对应)的第一资源文件。
例如,分别指示(标识)新资源文件的三个项目的排序顺序为Item4、Item5和Item6三个项目,其中,Item4指示新资源文件4、Item5指示新资源文件5,Item6指示新资源文件6,电子设备可以根据Item4、Item5以及Item6指示的资源文件的URL,依次得到新资源文件4、新资源文件5以及新资源文件6。
如此,电子设备可以按照一定的顺序,依次得到每个新资源文件,从而提高资源文件升级的灵活性。
可选地,在本申请实施例中,上述第一资源文件包包括:索引差异信息;
可选地,上述索引差异信息包括:每个第一资源文件的索引,与每个第一资源文件对应的原始资源文件的索引间的差异信息。
可选地,上述步骤201之后,本申请实施例提供的资源文件更新方法还包括以下步骤203:
步骤203:电子设备基于索引差异信息和原始资源文件的索引,得到每个第一资源文件的索引。
其中,上述第二资源文件包包括:每个第一资源文件的索引。
示例性地,电子设备对原始资源文件包内的索引,和第一资源文件包内的索引差异信息进行解压,并对解压后得到的每个索引进行差分还原,得到每个第一资源文件的索引。如此,电子设备可以对索引差异信息进行差分还原,得到第二资源文件包的新索引信息,而不必从服务器接收新索引信息,节省了资源文件传输所消耗的数据量。
进一步地,电子设备可以将得到的每个第一资源文件的索引和得到的第一资源文件进行组合,得到了第二资源文件包,即最终的新资源文件包文件,从而提高得到完整的新资源文件包的灵活性。
下面结合以上实施例,对本申请实施例提供的资源文件更新方法中的第二资源文件包进行详细说明。
如图3所示为旧资源文件包31、差异资源文件包33以及对应的新资源文件包51的示意图。电子设备接收服务器发送的差异资源文件包33(即第一资源文件包)后,根据新资源文件对应的更新状态的状态信息(即指示新资源文件是否发生变化),针对有变化的新资源文件11,根据旧资源文件1和对应的差异资源文件4,还原得到该新资源文件11,针对有变化的新资源文件13,根据旧资源文件3和对应的差异资源文件5,还原得到新资源文件13,针对未发生变化的新资源文件12,将旧资源文件包中的旧资源文件2作为该新资源文件12。
可以理解的是,由于新资源文件包中的新资源文件12未发生变化,即与旧资源包中其对应的旧资源文件2内容一致。如此,电子设备可以直接从旧资源文件包中取出该旧资源文件2作为对应的新资源文件12,而不需要从服务器接收体积较大的全量差异资源文件再从中确定新资源文件,从而减少资源文件传输所消耗的流量,并提高电子设备的处理效率。
本申请实施例提供一种资源文件更新方法,图4示出了本申请实施例提供的资源文件更新方法的流程图。如图4所示,本申请实施例提供的资源文件更新方法可以包括下述的步骤401和步骤402:
步骤401:服务器根据第二资源文件包,生成第一资源文件包。
其中,上述第二资源文件包包括:N个第一资源文件,N为正整数;
在本申请实施例中,上述第一资源文件用于更新电子设备中的原始资源文件。
可选地,上述第一资源文件可以用于更新电子设备中应用的原始资源文件,或者可以用于更新电子设备的操作系统的原始资源文件,具体可以根据实际需求确定,本申请实施例对不做任何限定。
在本申请实施例中,上述原始资源文件为待更新的资源文件。
为了便于理解,上述原始资源文件可以称为旧资源文件,上述第一资源文件可以称为新资源文件。
在本申请实施例中,第二资源文件包是对上述多个第一资源文件进行打包处理后,得到的资源文件包。例如,服务器对需要更新到设备端的新资源文件进行打包处理,得到新的资源文件包。
需要说明的是,本申请实施例中的资源文件包也可以称为资源打包文件,上述第二资源文件包也可以称为第二资源打包文件。
在本申请实施例中,服务器可以通过读取第二资源文件包的存储目录的路径,来获取该第二资源文件包。
在本申请实施例中,上述第二资源文件包还包括:第一索引信息。可选地,上述第一索引信息包括:每个第一资源文件对应的索引。
需要说明的是,一个完整的新资源文件包,可以由新索引和新资源文件两部分构成。
在本申请实施例中,上述第一资源文件包包括:
至少一个差异资源文件,
第一指示信息;
其中,上述第一指示信息用于指示每个第一资源文件是否发生变化。
需要说明的是,对于差异资源文件以及第一指示信息的解释可以参见上文,此处不再赘述。
可选地,在本申请实施例中,上述第一资源文件包还包括:第二资源文件包中的N个第一资源文件的排序顺序的顺序信息。
示例性地,上述至少一个第一资源文件的顺序为服务器默认的顺序。例如,默认为至少一个第一资源文件在第二资源文件包中的文件顺序;或者,上述第一顺序为用户自行设置的顺序。例如,用户可以对至少一个资源文件进行排序,将需要频繁访问的第一资源文件排在前面。如此,服务器能够优先访问到需要频繁访问的第一资源文件。
具体地,服务器可以将第二资源文件包内的每个第一资源文件的唯一路径标识(URL),按顺序记录下来,得到上述排序顺序。
可选地,在本申请实施例中,服务器根据每个第一资源文件对应的更新状态的状态信息,对第一资源文件进行差分和压缩处理,依次得到第一资源文件对应的差异资源文件
可选地,在本申请实施例中,服务器根据至少一个第一资源文件对应的第一顺序的顺序信息,对第一资源文件进行差分和压缩处理,依次得到第一资源文件对应的差异资源文件。
可选地,在本申请实施例中,一个差异资源文件;一个差异资源文件对应一个第一资源文件。
示例性地,上述差异资源文件用于指示:第一资源文件相对于原始资源文件的差异信息。
在相关技术中,当应用的原始资源文件包(旧资源文件包)需要更新时,为减少传输的流量,通常采用差分的方式,将旧资源文件包和新资源文件包视为二进制文件,运行差分算法,得到存储了前后差异信息的diff(即差异)文件。设备端再根据旧的资源文件包和diff文件,解析出新的资源文件包。但资源文件变化的特点,跟一般的二进制文件不同,往往是替换或者增删一些的小的资源文件,而不是大面积、无规律地变动,所以传统的差分方式无法得到最优的diff文件,无法最大限度地减少运算量以及传输流量、提升资源升级速度。
在一些可能的实现方式中,服务器在第一资源文件对应的更新状态指示第一资源文件发生变化的情况下,可以对该第一资源文件和该第一资源文件对应的原始资源文件进行差分和压缩,得到该第一资源文件对应的差异资源文件。服务器在第一资源文件对应的更新状态指示第一资源文件未发生变化的情况下,可以不对该第一资源文件进行处理,即不需要在记录该第一资源文件对应的差异资源文件。
可以理解,针对有变化的第一资源文件,服务器会进行差分和压缩处理,得到该第一资源文件的差异资源文件,对于未变化的第一资源文件,服务器可以不做处理。需要说明的是,上述差异资源文件也可以称为diff信息。
步骤402:服务器向电子设备发送第一资源文件包。
在本申请实施例中,在服务器与电子设备建立连接的情况下,向电子设备发送第一资源文件包。
可选地,在本申请实施例中,服务器可以基于TCP传输协议向电子设备发送第一资源文件包。
需要说明的是,服务器向电子设备发送资源文件包的具体实现方式可以参考现有技术,本申请实施例对此不再赘述。
在本申请实施例提供的资源文件更新方法中,服务器根据第二资源文件包,生成第一资源文件包,然后,向电子设备发送上述第一资源文件包;其中,上述第二资源文件包包括:N个第一资源文件;上述第一资源文件用于更新电子设备中的原始资源文件;上述第一资源文件包包括:至少一个差异资源文件和第一指示信息。通过该方法,服务器可以根据第一资源文件的内容是否发生变化,生成需要向电子设备发送的资源升级包(即第一资源文件包),而不需要对整个新旧资源文件包进行处理,得到资源升级包,从而减少服务器生成资源升级包的运算量,提高服务器的性能,并且有效减少生成的差异资源文件包的数据量,从而减少资源文件传输时消耗的数据量。
可选地,在本申请实施例中,上述第一资源文件包可以包括:校验信息。
示例性地,服务器可以在第一资源文件包中增加校验信息后,向电子设备发送该第一资源文件包。如此,在该第一资源文件包的文件头部增加校验信息,有效防止在该资源文件包中的资源文件被恶意篡改的情况下,电子设备对恶意篡改的资源文件进行解析和使用,从而保证电子设备端操作的安全性。
可选地,在本申请实施例中,上述步骤402可以包括以下步骤402a:
步骤402a:服务器第二资源文件包中的第一资源文件的排序顺序的顺序信息,将每个第一资源文件和对应的原始资源文件进行比对,生成至少一个差异资源文件。
示例性地,服务器可以将第二资源文件包中的每个第一资源文件的URL按顺序记录下来,生成顺序控制信息,该顺序控制信息中包括:多个项目(Item),一个Item指示一个第一资源文件,一个Item有两个字段的内容:资源文件URL,资源文件的变化标记。然后,按照上述多个项目的顺序,依次按照各个项目指示的第一资源文件的URL,分别从第二资源文件包和原始资源文件包取出对应的第一资源文件和原始资源文件进行对比,区分出有变化和无变化的第一资源文件。
进一步地,针对有变化的第一资源文件,服务器根对该第一资源文件和该第一资源文件对应的原始资源文件进行差分和压缩处理,生成该第一资源文件对应的差异资源文件。
例如,假设第二资源文件包中存在资源文件1、资源文件2和资源文件3以上三个资源文件,资源文件1的资源内容与该资源文件1对应的原始资源文件的资源内容相同,即资源文件1的内容未发生更新(或变化),资源文件2和资源文件3的内容均发生了更新,则服务器可以从第二资源文件包中确定出资源文件2和资源文件3,并分别生成该资源文件2和资源文件3对应的差异资源文件。
可以理解的是,仅针对第一资源文件中发生变化的资源文件进行差分和压缩处理,得到的资源文件的文件体积更小,相比于传统的向电子设备发送的全量的新资源文件包,或者整个新资源文件包和整个原始资源文件包的差异资源文件相比,均有效减小了待发送的资源文件的体积,从而能够节省向第一设备发送时消耗的流量。
如此,服务器可以按照第一资源文件对应的顺序信息,依次判断第一资源文件是否发生变化,并针对发生变化的第一资源文件,生成其对应的差异资源文件,从而能够优先得到较为重要的第一资源文件对应的差异资源文件,提高生成差异资源文件的灵活性。
可选地,在本申请实施例中,上述第二资源文件包包括:每个第一资源文件的索引;上述第一资源文件包包括:索引差异信息;
其中,上述索引差异信息包括:
每个第一资源文件的索引,与每个所述第一资源文件对应的原始资源文件的索引间的差异信息。
示例性地,服务器将第二资源文件包内的索引(即新索引)和原始资源文件包内的索引(即旧索引),作为二进制数据块,进行差分和压缩处理,得到索引差异信息。
为了便于理解,上述索引差异信息也可以称为索引diff信息。
可以理解的是,一个完整的资源文件包通常由索引和资源文件两部分组成,对第一资源文件和原始资源文件的索引进行差分和压缩处理后,能够有效压缩索引的数据量,从而较少向电子设备发送的资源文件包的体积,进而有效节省资源文件传输所消耗的数据量。
下面结合以上实施例,对本申请实施例提供的资源文件更新方法中的第一资源文件包进行详细说明。
示例性地,上述第一资源文件包包括索引差异信息、顺序控制信息、差异资源文件,以及校验信息。
如图5所示为第二资源文件包、原始资源文件包以及对应的第一资源文件包的示意图,第一应用的旧资源文件包31(即原始资源文件包)中包括:旧索引、旧资源文件1、旧资源文件2和旧资源文件3等多个资源文件,用于对第一应用进行更新的新资源文件包32(即第二资源文件包)中包括:新索引、与资源文件1对应的新资源文件11、与资源文件2对应的新资源文件12、与资源文件3对应的新资源文件13等多个资源文件,生成的差异资源文件包33(即,第一资源文件包)中包括:校验信息,差异索引,顺序控制信息,以及新资源文件11和新资源文件13分别对应的差异资源文件4和差异资源文件5。
可以理解的是,资源文件11相比于资源文件1发生变化,资源文件12相比于资源文件2未发生变化,资源文件13相比于资源文件3发生变化,由于资源文件12没有发生变化,因此不需要将资源文件12记录在差异资源文件包从而减少待发送资源文件的体积。虚线框中的“文件12”表示资源文件12未变化,不需要在差异资源文件中记录该资源文件12对应的差异资源文件。
需要说明的是,为了清楚地直观地描述资源文件包中包括的信息,图5中以文件夹界面(或者窗口)的形式示出了资源文件包,而不构成对资源文件包的限定。
可以理解的是,当服务器需要升级客户端(如电子设备)的资源文件时,只要发送第一资源文件包给客户端即可,该第一资源文件包相比于传统的资源文件包体积小,因此能够有效减少传输时所消耗的流量。
本申请实施例提供一种交互方法,图6示出了本申请实施例提供的交互方法的流程图。如图6所示,本申请实施例提供的交互方法可以包括下述的步骤501至步骤504:
步骤501:服务器根据第二资源文件包,生成第一资源文件包。
步骤502:服务器向电子设备发送第一资源文件包。
步骤503:电子设备获取第一资源文件包。
步骤504:电子设备根据第一资源文件包及电子设备内的原始资源包,得到第二资源文件包。
其中,上述第二资源文件包包括:N个第一资源文件;
上述第一资源文件包包括:
至少一个差异资源文件;
指示每个第一资源文件是否发生变化的第一指示信息。
其中,上述第一资源文件用于更新原始资源包中的原始资源文件。
一个差异资源文件对应一个第一资源文件;
每个差异资源文件用于指示:对应的第一资源文件相对于原始资源文件的差异信息。
在本申请实施例提供的交互方法中,服务器可以根据第一资源文件的内容是否发生变化,生成需要向电子设备发送的第一资源文件包,电子设备获取该第一资源文件包后,根据指示每个第一资源文件是否发生变化的指示信息,通过第一资源文件包中,第一资源文件对应的差异资源文件以及原始资源包,还原得到第一资源文件,有效减少资源文件传输所耗费的数据量,并且有效减少运算量,提高资源升级速度。
需要说明的是,本申请各个实施例可以独立执行,或者相互结合执行。
本申请实施例提供的方法,执行主体可以为资源文件更新装置。本申请实施例中以资源文件更新装置执行资源文件更新方法为例,说明本申请实施例提供的资源文件更新装置。
如图7所示,本申请实施例提供一种资源文件更新装置的结构示意图,如图7所示,资源文件更新装置600包括:获取模块601和确定模块602,其中:
上述获取模块601,用于获取第一资源文件包;
上述确定模块602,用于根据上述获取模块601获取的第一资源文件包及电子设备内的原始资源包,得到第二资源文件包;
其中,上述第二资源文件包包括:N个第一资源文件;
第一资源文件包包括:
至少一个差异资源文件;
指示每个第一资源文件是否发生变化的第一指示信息;
第一资源文件用于更新原始资源包中的原始资源文件;
一个差异资源文件对应一个第一资源文件;
每个差异资源文件用于指示:对应的第一资源文件相对于原始资源文件的差异信息。
可选地,在本申请实施例中,
上述确定模块602,具体用于在指示信息指示目标第一资源文件未发生变化的情况下,将原始资源包中目标第一资源文件对应的原始资源文件,作为目标第一资源文件;
上述确定模块602,具体用于在指示信息指示目标第一资源文件发生变化的情况下,根据原始资源包中目标第一资源文件对应的原始资源文件,和目标第一资源文件对应的差异资源文件,得到目标第一资源文件;
其中,上述目标第一资源文件为N个第一资源文件中的一个或多个资源文件。
可选地,在本申请实施例中,上述第一资源文件包还包括:第二资源文件包中的N个第一资源文件的排序顺序的顺序信息;
上述确定模块602,具体用于基于至少一个差异资源文件和原始资源包中的原始资源文件,按照排序顺序,得到N个第一资源文件。
可选地,在本申请实施例中,
上述确定模块602,具体用于针对排序顺序中的第i位:
在第i位对应的第一资源文件未发生变化的情况下,将第i位对应的所述原始资源文件,作为第i位对应的第一资源文件;
在第i位对应的第一资源文件发生变化的情况下,基于第i位对应差异资源文件和原始资源文件,得到第i位对应的第一资源文件;
其中,i∈[1,2,……,N]。
可选地,在本申请实施例中,
上述第一资源文件包还包括:索引差异信息;
上述索引差异信息包括:每个第一资源文件的索引,与每个第一资源文件对应的原始资源文件的索引间的差异信息;
上述确定模块602,还用于在获取模块601获取第一资源文件包之后,基于索引差异信息和原始资源文件的索引,得到每个第一资源文件的索引;
其中,上述第二资源文件包包括:每个第一资源文件的索引。
在本申请实施例提供的资源文件更新装置中,资源文件更新装置获取第一资源文件包,并根据第一资源文件包以及电子设备内的原始资源包,得到第二资源文件包。其中,上述第二资源文件包包括:N个第一资源文件,上述第一资源文件包包括:至少一个差异资源文件,以及指示每个第一资源文件是否发生变化的第一指示信息;上述第一资源文件用于更新原始资源包中的原始资源文件。通过该方法,资源文件更新装置可以获取至少一个差异资源文件,并基于指示每个第一资源文件是否发生变化的指示信息,通过至少一个差异资源文件和原始资源包中的原始资源文件,还原得到每个第一资源文件,而不需要下载整个差异资源包并对整个差异资源包进行解析,从而节省了下载资源包所消耗的流量,并有效减少资源升级时的运算量,进而提高资源文件的升级速度。
如图8所示,本申请实施例提供一种资源文件更新装置的结构示意图,如图8所示,文件资源更新装置700包括:所述装置包括:生成模块701和发送模块702,其中:
上述生成模块,用于根据第二资源文件包,生成第一资源文件包;
上述发送模块,用于向电子设备发送生成模块701生成的第一资源文件包;
其中,上述第二资源文件包包括:N个第一资源文件;
第一资源文件用于更新电子设备中的原始资源文件;
第一资源文件包包括:
至少一个差异资源文件,
第一指示信息;
上述第一指示信息用于指示至少一个第一资源文件是否发生变化。
可选地,在本申请实施例中,一个差异资源文件对应一个第一资源文件;
上述差异资源文件用于指示:对应的第一资源文件相对于原始资源文件的差异信息。
可选地,在本申请实施例中,
上述生成模块701,具体用于基于第二资源文件包中的第一资源文件的排序顺序的顺序信息,将每个第一资源文件和对应的原始资源文件进行比对,生成至少一个差异资源文件。
可选地,在本申请实施例中,上述第一资源文件包还包括:第二资源文件包中的N个第一资源文件的排序顺序的顺序信息。
可选地,在本申请实施例中,
上述第二资源文件包还包括:每个第一资源文件的索引;
上述第一资源文件包还包括:索引差异信息;
其中,上述索引差异信息包括:
每个第一资源文件的索引,与每个第一资源文件对应的原始资源文件的索引间的差异信息。
在本申请实施例提供的资源文件更新装置中,资源文件更新装置根据第二资源文件包,生成第一资源文件包,然后,向电子设备发送上述第一资源文件包;其中,上述第二资源文件包包括:N个第一资源文件;上述第一资源文件用于更新电子设备中的原始资源文件;上述第一资源文件包包括:至少一个差异资源文件和第一指示信息。通过该方法,资源文件更新装置可以根据第一资源文件的内容是否发生变化,生成需要向电子设备发送的资源升级包(即第一资源文件包),而不需要对整个新旧资源文件包进行处理,得到资源升级包,从而减少服务器生成资源升级包的运算量,并且有效减少生成的差异资源文件包的数据量,从而减少资源文件传输时消耗的数据量。
本申请实施例中的资源文件更新装置可以是电子设备,也可以是电子设备中的部件,例如集成电路或芯片。该电子设备可以是终端,也可以为除终端之外的其他设备。示例性的,电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、移动上网装置(Mobile Internet Device,MID)、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、机器人、可穿戴设备、超级移动个人计算机(ultra-mobilepersonal computer,UMPC)、上网本或者个人数字助理(personal digital assistant,PDA)等,还可以为服务器、网络附属存储器(Network Attached Storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例中的资源文件更新装置可以为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为IOS操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。
本申请实施例提供的资源文件更新装置能够实现图1至图3,或者能够实现图4和图5的方法实施例实现的各个过程,为避免重复,这里不再赘述。
可选地,如图9所示,本申请实施例还提供一种电子设备800,包括处理器801和存储器802,存储器802上存储有可在所述处理器801上运行的程序或指令,该程序或指令被处理器801执行时实现上述资源文件更新方法实施例的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,本申请实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。
图10为实现本申请实施例的一种电子设备的硬件结构示意图。
该电子设备100包括但不限于:射频单元101、网络模块102、音频输出单元103、输入单元104、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、以及处理器110等部件。
本领域技术人员可以理解,电子设备100还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图10中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
其中,上述处理器110,用于获取第一资源文件包;
上述处理器110,还用于根据获取的第一资源文件包及电子设备内的原始资源包,得到第二资源文件包;
其中,上述第二资源文件包包括:N个第一资源文件;
第一资源文件包包括:
至少一个差异资源文件;
指示每个第一资源文件是否发生变化的第一指示信息;
第一资源文件用于更新原始资源包中的原始资源文件;
一个差异资源文件对应一个第一资源文件;
每个差异资源文件用于指示:对应的第一资源文件相对于原始资源文件的差异信息。
可选地,在本申请实施例中,
上述处理器110,具体用于在指示信息指示目标第一资源文件未发生变化的情况下,将原始资源包中目标第一资源文件对应的原始资源文件,作为目标第一资源文件;
上述处理器110,具体用于在指示信息指示目标第一资源文件发生变化的情况下,根据原始资源包中目标第一资源文件对应的原始资源文件,和目标第一资源文件对应的差异资源文件,得到目标第一资源文件;
其中,上述目标第一资源文件为N个第一资源文件中的一个或多个资源文件。
可选地,在本申请实施例中,上述第一资源文件包还包括:第二资源文件包中的N个第一资源文件的排序顺序的顺序信息;
上述处理器110,具体用于基于至少一个差异资源文件和原始资源包中的原始资源文件,按照排序顺序,得到N个第一资源文件。
可选地,在本申请实施例中,
上述处理器110,具体用于针对排序顺序中的第i位:
在第i位对应的第一资源文件未发生变化的情况下,将第i位对应的所述原始资源文件,作为第i位对应的第一资源文件;
在第i位对应的第一资源文件发生变化的情况下,基于第i位对应差异资源文件和原始资源文件,得到第i位对应的第一资源文件;
其中,i∈[1,2,……,N]。
可选地,在本申请实施例中,
上述第一资源文件包还包括:索引差异信息;
上述索引差异信息包括:每个第一资源文件的索引,与每个第一资源文件对应的原始资源文件的索引间的差异信息;
上述处理器110,还用于在获取第一资源文件包之后,基于索引差异信息和原始资源文件的索引,得到每个第一资源文件的索引;
其中,上述第二资源文件包包括:每个第一资源文件的索引。
在本申请实施例提供的电子设备中,电子设备获取第一资源文件包,并根据第一资源文件包以及电子设备内的原始资源包,得到第二资源文件包。其中,上述第二资源文件包包括:N个第一资源文件,上述第一资源文件包包括:至少一个差异资源文件,以及指示每个第一资源文件是否发生变化的第一指示信息;上述第一资源文件用于更新原始资源包中的原始资源文件。通过该方法,电子设备可以获取至少一个差异资源文件,并基于指示每个第一资源文件是否发生变化的指示信息,通过至少一个差异资源文件和原始资源包中的原始资源文件,还原得到每个第一资源文件,而不需要下载整个差异资源包并对整个差异资源包进行解析,从而节省了下载资源包所消耗的流量,并有效减少资源升级时的运算量,进而提高资源文件的升级速度。
应理解的是,本申请实施例中,输入单元104可以包括图形处理器(GraphicsProcessing Unit,GPU)1041和麦克风1042,图形处理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元106可包括显示面板1061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板1061。用户输入单元107包括触控面板1071以及其他输入设备1072中的至少一种。触控面板1071,也称为触摸屏。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
存储器109可用于存储软件程序以及各种数据。存储器109可主要包括存储程序或指令的第一存储区和存储数据的第二存储区,其中,第一存储区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器109可以包括易失性存储器或非易失性存储器,或者,存储器109可以包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本申请实施例中的存储器109包括但不限于这些和任意其它适合类型的存储器。
处理器110可包括一个或多个处理单元;可选的,处理器110集成应用处理器和调制解调处理器,其中,应用处理器主要处理涉及操作系统、用户界面和应用程序等的操作,调制解调处理器主要处理无线通信信号,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。
本申请实施例还提供了一种服务器,如图11所示,该服务器1000包括:天线1001、射频装置1002、基带装置1003、处理器1004和存储器1005。天线1001与射频装置1002连接。在上行方向上,射频装置1002通过天线1001接收信息,将接收的信息发送给基带装置1003进行处理。在下行方向上,基带装置1003对要发送的信息进行处理,并发送给射频装置1002,射频装置1002对收到的信息进行处理后经过天线1001发送出去。
以上实施例中服务器执行的方法可以在基带装置1003中实现,该基带装置503包括基带处理器。基带装置1003例如可以包括至少一个基带板,该基带板上设置有多个芯片,如图11所示,其中一个芯片例如为基带处理器,通过总线接口与存储器1005连接,以调用存储器1005中的程序,执行以上方法实施例中服务器操作。
服务器还可以包括网络接口1006,该接口例如为通用公共无线接口(commonpublic radio interface,CPRI)。
其中,上述处理器1004,用于根据第二资源文件包,生成第一资源文件包;
上述射频装置1002,用于向电子设备发送处理器1004生成的第一资源文件包;
其中,上述第二资源文件包包括:N个第一资源文件;
第一资源文件用于更新电子设备中的原始资源文件;
第一资源文件包包括:
至少一个差异资源文件,
第一指示信息;
上述第一指示信息用于指示至少一个第一资源文件是否发生变化。
可选地,在本申请实施例中,一个差异资源文件对应一个第一资源文件;
上述差异资源文件用于指示:对应的第一资源文件相对于原始资源文件的差异信息。
可选地,在本申请实施例中,
上述处理器1004,具体用于基于第二资源文件包中的第一资源文件的排序顺序的顺序信息,将每个第一资源文件和对应的原始资源文件进行比对,生成至少一个差异资源文件。
可选地,在本申请实施例中,上述第一资源文件包还包括:第二资源文件包中的N个第一资源文件的排序顺序的顺序信息。
可选地,在本申请实施例中,
上述第二资源文件包还包括:每个第一资源文件的索引;
上述第一资源文件包还包括:索引差异信息;
其中,上述索引差异信息包括:
每个第一资源文件的索引,与每个第一资源文件对应的原始资源文件的索引间的差异信息。
在本申请实施例提供的资源文件更新装置中,资源文件更新装置根据第二资源文件包,生成第一资源文件包,然后,向电子设备发送上述第一资源文件包;其中,上述第二资源文件包包括:N个第一资源文件;上述第一资源文件用于更新电子设备中的原始资源文件;上述第一资源文件包包括:至少一个差异资源文件和第一指示信息。通过该方法,资源文件更新装置可以根据第一资源文件的内容是否发生变化,生成需要向电子设备发送的资源升级包(即第一资源文件包),而不需要对整个新旧资源文件包进行处理,得到资源升级包,从而减少服务器生成资源升级包的运算量,并且有效减少生成的差异资源文件包的数据量,从而减少资源文件传输时消耗的数据量。
本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述资源文件更新方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器ROM、随机存取存储器RAM、磁碟或者光盘等。
本申请实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述资源文文件更新方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本申请实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述资源文件更新方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

Claims (20)

1.一种资源文件更新方法,其特征在于,所述方法包括:
电子设备获取第一资源文件包;
所述电子设备根据所述第一资源文件包及所述电子设备内的原始资源包,得到第二资源文件包;
其中,所述第二资源文件包包括:N个第一资源文件;
所述第一资源文件包包括:
至少一个差异资源文件,
指示每个所述第一资源文件是否发生变化的第一指示信息;
所述第一资源文件用于更新所述原始资源包中的原始资源文件;
一个所述差异资源文件对应一个所述第一资源文件;
每个所述差异资源文件用于指示:对应的所述第一资源文件相对于所述原始资源文件的差异信息。
2.根据权利要求1所述的方法,其特征在于,所述电子设备根据所述第一资源文件包及所述电子设备内的原始资源包,得到第二资源文件包,包括:
在所述指示信息指示目标第一资源文件未发生变化的情况下,将所述原始资源包中目标第一资源文件对应的原始资源文件,作为所述目标第一资源文件;
在所述指示信息指示目标第一资源文件发生变化的情况下,根据所述原始资源包中目标第一资源文件对应的原始资源文件,和所述目标第一资源文件对应的差异资源文件,得到所述目标第一资源文件;
其中,所述目标第一资源文件为所述N个第一资源文件中的一个或多个资源文件。
3.根据权利要求1所述的方法,其特征在于,所述第一资源文件包还包括:所述第二资源文件包中的所述N个第一资源文件的排序顺序的顺序信息;
所述电子设备根据所述第一资源文件包及所述电子设备内的原始资源包,得到第二资源文件包,包括:
所述电子设备基于所述至少一个差异资源文件和所述原始资源包中的原始资源文件,按照所述排序顺序,得到所述N个第一资源文件。
4.根据权利要求3所述的方法,其特征在于,所述电子设备基于所述至少一个差异资源文件和所述原始资源包中的原始资源文件,按照所述排序顺序,得到所述N个第一资源文件,包括:
针对所述排序顺序中的第i位:
在所述第i位对应的所述第一资源文件未发生变化的情况下,将所述第i位对应的所述原始资源文件,作为所述第i位对应的所述第一资源文件;
在所述第i位对应的所述第一资源文件发生变化的情况下,基于所述第i位对应所述差异资源文件和所述原始资源文件,得到所述第i位对应的所述第一资源文件;
其中,i∈[1,2,……,N]。
5.根据权利要求1至4任一项所述的方法,其特征在于,
所述第一资源文件包还包括:索引差异信息;
所述索引差异信息包括:每个所述第一资源文件的索引,与每个所述第一资源文件对应的所述原始资源文件的索引间的差异信息;
所述电子设备获取第一资源文件包之后,所述方法还包括:
基于所述索引差异信息和所述原始资源文件的索引,得到每个所述第一资源文件的索引;
其中,所述第二资源文件包包括:每个所述第一资源文件的索引。
6.一种资源文件更新方法,其特征在于,所述方法包括:
服务器根据第二资源文件包,生成第一资源文件包;
所述服务器向电子设备发送所述第一资源文件包;
其中,所述第二资源文件包包括:N个第一资源文件;
所述第一资源文件用于更新所述电子设备中的原始资源文件;
所述第一资源文件包包括:
至少一个差异资源文件,
第一指示信息;
所述第一指示信息用于指示每个所述第一资源文件是否发生变化。
7.根据权利要求6所述的方法,其特征在于,一个所述差异资源文件对应一个所述第一资源文件;
所述差异资源文件用于指示:对应的所述第一资源文件相对于所述原始资源文件的差异信息。
8.根据权利要求7所述的方法,其特征在于,所述服务器根据第二资源文件包,生成第一资源文件包,包括:
所述服务器基于所述第二资源文件包中的第一资源文件的排序顺序的顺序信息,将每个所述第一资源文件和对应的原始资源文件进行比对,生成所述至少一个差异资源文件。
9.根据权利要求6所述的方法,其特征在于,所述第一资源文件包还包括:所述第二资源文件包中的所述N个第一资源文件的排序顺序的顺序信息。
10.根据权利要求6至9任一项所述的方法,其特征在于,
所述第二资源文件包还包括:每个所述第一资源文件的索引;
所述第一资源文件包还包括:索引差异信息;
其中,所述索引差异信息包括:
每个所述第一资源文件的索引,与每个所述第一资源文件对应的所述原始资源文件的索引间的差异信息。
11.一种资源文件更新装置,其特征在于,所述装置包括:获取模块和确定模块,其中:
所述获取模块,用于获取第一资源文件包;
所述确定模块,用于根据所述获取模块获取的所述第一资源文件包及所述电子设备内的原始资源包,得到第二资源文件包;
其中,所述第二资源文件包包括:N个第一资源文件;
所述第一资源文件包包括:
至少一个差异资源文件;
指示每个所述第一资源文件是否发生变化的第一指示信息;
所述第一资源文件用于更新所述原始资源包中的原始资源文件;
一个所述差异资源文件对应一个所述第一资源文件;
每个所述差异资源文件用于指示:对应的所述第一资源文件相对于所述原始资源文件的差异信息。
12.根据权利要求11所述的装置,其特征在于,
所述确定模块,具体用于在所述指示信息指示目标第一资源文件未发生变化的情况下,将所述原始资源包中目标第一资源文件对应的原始资源文件,作为所述目标第一资源文件;
所述确定模块,具体用于在所述指示信息指示目标第一资源文件发生变化的情况下,根据所述原始资源包中目标第一资源文件对应的原始资源文件,和所述目标第一资源文件对应的差异资源文件,得到所述目标第一资源文件;
其中,所述目标第一资源文件为所述N个第一资源文件中的一个或多个资源文件。
13.根据权利要求11所述的装置,其特征在于,所述第一资源文件包还包括:所述第二资源文件包中的所述N个第一资源文件的排序顺序的顺序信息;
所述确定模块,具体用于基于所述至少一个差异资源文件和所述原始资源包中的原始资源文件,按照所述排序顺序,得到所述N个第一资源文件。
14.根据权利要求13所述的装置,其特征在于,
所述确定模块,具体用于针对所述排序顺序中的第i位:
在所述第i位对应的所述第一资源文件未发生变化的情况下,将所述第i位对应的所述原始资源文件,作为所述第i位对应的所述第一资源文件;
在所述第i位对应的所述第一资源文件发生变化的情况下,基于所述第i位对应所述差异资源文件和所述原始资源文件,得到所述第i位对应的所述第一资源文件;
其中,i∈[1,2,……,N]。
15.根据权利要求11至14任一项所述的装置,其特征在于,
所述第一资源文件包还包括:索引差异信息;
所述索引差异信息包括:每个所述第一资源文件的索引,与每个所述第一资源文件对应的所述原始资源文件的索引间的差异信息;
所述确定模块,还用于在所述获取模块获取第一资源文件包之后,基于所述索引差异信息和所述原始资源文件的索引,得到每个所述第一资源文件的索引;
其中,所述第二资源文件包包括:每个所述第一资源文件的索引。
16.一种资源文件更新装置,其特征在于,所述装置包括:生成模块和发送模块,其中:
所述生成模块,用于根据第二资源文件包,生成第一资源文件包;
所述发送模块,用于向电子设备发送所述生成模块生成的所述第一资源文件包;
其中,所述第二资源文件包包括:N个第一资源文件;
所述第一资源文件用于更新所述电子设备中的原始资源文件;
所述第一资源文件包包括:
至少一个差异资源文件,
第一指示信息;
所述第一指示信息用于指示所述至少一个第一资源文件是否发生变化。
17.根据权利要求16所述的装置,其特征在于,一个所述差异资源文件对应一个所述第一资源文件;
所述差异资源文件用于指示:对应的所述第一资源文件相对于所述原始资源文件的差异信息。
18.根据权利要求17所述的装置,其特征在于,
所述生成模块,具体用于基于所述第二资源文件包中的第一资源文件的排序顺序的顺序信息,将每个所述第一资源文件和对应的原始资源文件进行比对,生成所述至少一个差异资源文件。
19.根据权利要求16所述的装置,其特征在于,所述第一资源文件包还包括:所述第二资源文件包中的所述N个第一资源文件的排序顺序的顺序信息。
20.根据权利要求16至19任一项所述的装置,其特征在于,
所述第二资源文件包还包括:每个所述第一资源文件的索引;
所述第一资源文件包还包括:索引差异信息;
其中,所述索引差异信息包括:
每个所述第一资源文件的索引,与每个所述第一资源文件对应的所述原始资源文件的索引间的差异信息。
CN202210503050.6A 2022-05-09 2022-05-09 资源文件更新方法、装置、设备及可读存储介质 Pending CN114860295A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210503050.6A CN114860295A (zh) 2022-05-09 2022-05-09 资源文件更新方法、装置、设备及可读存储介质
PCT/CN2023/092793 WO2023217086A1 (zh) 2022-05-09 2023-05-08 资源文件更新方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210503050.6A CN114860295A (zh) 2022-05-09 2022-05-09 资源文件更新方法、装置、设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN114860295A true CN114860295A (zh) 2022-08-05

Family

ID=82638150

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210503050.6A Pending CN114860295A (zh) 2022-05-09 2022-05-09 资源文件更新方法、装置、设备及可读存储介质

Country Status (2)

Country Link
CN (1) CN114860295A (zh)
WO (1) WO2023217086A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023217086A1 (zh) * 2022-05-09 2023-11-16 维沃移动通信有限公司 资源文件更新方法、装置、设备及可读存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102622385A (zh) * 2011-06-30 2012-08-01 北京小米科技有限责任公司 一种第三方应用程序换肤的方法
US10528708B2 (en) * 2016-12-16 2020-01-07 International Business Machines Corporation Prevention of unauthorized resource updates
CN109908585B (zh) * 2019-03-06 2022-12-27 珠海金山数字网络科技有限公司 一种文件处理方法及系统、计算设备及存储介质
CN111556127B (zh) * 2020-04-24 2023-04-07 广东乐心医疗电子股份有限公司 一种可穿戴设备升级方法及相关设备
CN111562929A (zh) * 2020-04-29 2020-08-21 米哈游科技(上海)有限公司 补丁文件的生成方法、装置、设备及存储介质
CN114860295A (zh) * 2022-05-09 2022-08-05 维沃移动通信有限公司 资源文件更新方法、装置、设备及可读存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023217086A1 (zh) * 2022-05-09 2023-11-16 维沃移动通信有限公司 资源文件更新方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
WO2023217086A1 (zh) 2023-11-16

Similar Documents

Publication Publication Date Title
CN107729352B (zh) 页面资源加载方法及终端设备
CN111901896A (zh) 信息分享方法、信息分享装置、电子设备及存储介质
CN111008348A (zh) 反爬虫方法、终端、服务器及计算机可读存储介质
CN112947981A (zh) 应用程序资源更新方法、装置、终端设备及服务器
CN112099684A (zh) 一种搜索展示方法、装置及电子设备
CN112241298A (zh) 页面显示方法及装置、存储介质、电子装置
WO2023217086A1 (zh) 资源文件更新方法、装置、设备及可读存储介质
CN110222046B (zh) 列表数据的处理方法、装置、服务器和存储介质
CN113609479A (zh) 一种文件检测的方法、装置、电子设备及可读存储介质
CN107943921B (zh) 页面分享信息生成方法、装置、计算机设备和存储介质
CN111722994A (zh) 一种任务请求的响应方法及设备
CN111817944A (zh) 图片分享的方法、装置及电子设备
CN113268179B (zh) 会话消息处理方法、装置、设备及存储介质
CN112817782B (zh) 一种数据采集上报方法、装置、电子设备和存储介质
CN109002710A (zh) 一种检测方法、装置及计算机可读存储介质
CN112698879A (zh) 加载源文件的方法及装置
CN114070892A (zh) 数据传输方法和装置
CN107256151A (zh) 页面渲染的处理方法、装置及终端
CN113835820A (zh) 图形码的显示方法及装置
CN115033147A (zh) 信息处理方法、装置、设备以及存储介质
EP3385872B1 (en) Anti-counterfeiting method, device, storage medium and apparatus based on invalid map data
CN113127812B (zh) 文件检测方法、装置、终端及存储介质
CN113705722B (zh) 一种操作系统版本识别的方法、装置、设备和介质
CN110908958B (zh) 一种文件处理方法、装置、终端及存储介质
CN117648510B (zh) 信息展示方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination