CN111045698A - 冗余图片的删除方法、装置、电子设备及存储介质 - Google Patents
冗余图片的删除方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111045698A CN111045698A CN201911346715.1A CN201911346715A CN111045698A CN 111045698 A CN111045698 A CN 111045698A CN 201911346715 A CN201911346715 A CN 201911346715A CN 111045698 A CN111045698 A CN 111045698A
- Authority
- CN
- China
- Prior art keywords
- picture
- installation package
- identification
- pictures
- identifier
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 141
- 238000012217 deletion Methods 0.000 claims description 11
- 230000037430 deletion Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 5
- 230000008030 elimination Effects 0.000 claims description 4
- 238000003379 elimination reaction Methods 0.000 claims description 4
- 230000009191 jumping Effects 0.000 claims description 3
- 238000009434 installation Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了冗余图片的删除方法、装置、电子设备及存储介质,首先根据程序安装包生成第一标识列表,第一标识列表包括程序安装包中所有冗余图片的标识,然后发送第一标识列表给服务器;当程序安装包中的图片被使用时,发送被使用图片的标识给服务器,以使服务器根据被使用图片的标识对第一标识列表进行去重处理,得到第二标识列表;最后接收服务器返回的第二标识列表并根据第二标识列表删除程序安装包中的冗余图片。本申请方法无需人工查找进而具有较高的查找效率,进一步,通过服务器对第一标识列表进行去重处理,可以将第一标识列表中可能包含的有用图片的标识剔除,进而确保第二标识列表的准确性,避免错误删除有用图片。
Description
技术领域
本申请涉及软件技术领域,尤其涉及一程序安装包中冗余图片的删除方法、装置、电子设备及存储介质。
背景技术
应用程序发展过程中,随着用户需求的增加和变更,以及移动设备的碎片化兼容,应用程序安装包中会不断引入新的业务逻辑代码、图片资源和第三方库等,安装包的体量越来越大,终端下载安装包也将消耗更多的数据流量和终端资源。另外,一些场景甚至会限制使用数据流量下载过大的安装包,例如无法使用数据流量在苹果应用商店里下载150M以上的安装包。因此减小应用程序安装包的体量大小是程序开发人员必须要解决的技术问题。
降低应用程序安装包体量的常规策略包括删除冗余代码、删除冗余图片、资源压缩和减少不必要的第三方库。其中,为了删除应用程序安装包中的冗余图片,现有的开发流程是在添加新开发功能的需求代码并导入需求的图片资源后,人工在原有代码中查找冗余代码以定位到冗余图片,再将冗余代码和图片删除。
然而,上述人工查找冗余图片的方法不仅效率和准确率低下,而且如果冗余代码已被删除,则将无法定位到冗余图片,进而无法将这些冗余图片删除。
发明内容
本申请提供一种程序安装包中冗余图片的删除方法、装置、电子设备及存储介质,以解决如何删除程序安装包中冗余图片的问题。
第一方面,本申请提供一种程序安装包中冗余图片的删除方法,所述方法包括:
根据程序安装包生成第一标识列表,所述第一标识列表包括所述程序安装包中所有冗余图片的标识;
发送所述第一标识列表给服务器;
当所述程序安装包中的图片被使用时,发送被使用图片的标识给服务器;
接收服务器返回的第二标识列表,所述第二标识列表为所述服务器根据所述被使用图片的标识对所述第一标识列表进行去重处理得到的标识列表;
根据所述第二标识列表删除程序安装包中的冗余图片。
进一步,所述根据程序安装包生成第一标识列表,包括:
获取程序安装包中所有图片的标识,根据所有图片的标识生成第零标识列表;
提取所述程序安装包中的图片关联文件,所述图片关联文件为与所述程序安装包中的有用图片相关联的文件;
根据所述图片关联文件包含的所述有用图片的标识,对所述第零标识列表进行去重处理,得到第一标识列表。
进一步,所述发送第一标识列表给服务器,包括:
在应用程序启动且页面资源载入之前,发送所述第一标识列表给服务器。
进一步,所述当程序安装包中的图片被使用时,发送被使用图片的标识给服务器,包括:
应用程序启动时,将应用程序中的原使用方法替换为目标使用方法,以当应用程序调用所述原使用方法时,跳转到所述目标使用方法,其中,所述原使用方法用于使用程序安装包中的图片,所述目标使用方法用于调用所述原使用方法,以及发送被使用图片的标识给服务器;
当应用程序调用所述原使用方法时,所述目标使用方法被调用;
通过所述目标使用方法使用程序安装包中的图片,并将被使用图片的标识发送给服务器。
进一步,所述根据第二标识列表删除程序安装包中的冗余图片,包括:
根据所述第二标识列表中的标识,查找所述标识对应的冗余图片;
删除所述冗余图片。
第二方面,本申请还提供一种程序安装包中冗余图片的删除方法,所述方法包括:
接收客户端发送的第一标识列表和被使用图片的标识,所述第一标识列表包括所述程序安装包中所有冗余图片的标识,所述被使用图片的标识由所述客户端在所述程序安装包中的图片被使用时发送;
根据所述被使用图片的标识对所述第一标识列表进行去重处理,得到第二标识列表;
将所述第二标识列表返回给客户端。
进一步,当接收到客户端发送的被使用图片的标识时,判断是否接收到所述第一标识列表;
如果未接收到所述第一标识列表,保存接收到的所述被使用图片的标识;
当接收到所述第一标识列表时,根据已经接收到的所述被使用图片的标识对所述第一标识列表进行去重处理。
进一步,所述根据所述使用图片的标识对所述第一标识列表进行去重处理,包括:
判断所述被使用图片的标识在所述第一标识列表中是否存在;
如果存在,则将所述被使用图片的标识在所述第一标识列表中删除。
第三方面,本申请还提供一种程序安装包中冗余图片的删除装置,所述装置包括:
生成模块,用于根据程序安装包生成第一标识列表,所述第一标识列表包括所述程序安装包中所有冗余图片的标识;
第一发送模块,用于发送所述第一标识列表给服务器;
第二发送模块,用于当所述程序安装包中的图片被使用时,发送被使用图片的标识给服务器;
接收模块,用于接收服务器返回的第二标识列表,所述第二标识列表为所述服务器根据所述被使用图片的标识对所述第一标识列表进行去重处理得到的标识列表;
删除模块,用于根据所述第二标识列表删除程序安装包中的冗余图片。
进一步,所述生成模块,包括:
第一获取单元,用于获取程序安装包中所有图片的标识,根据所有图片的标识生成第零标识列表;
第二获取单元,用于提取所述程序安装包中的图片关联文件,所述图片关联文件为与所述程序安装包中的有用图片相关联的文件;
去重单元,用于根据所述图片关联文件包含的所述有用图片的标识,对所述第零标识列表进行去重处理,得到第一标识列表。
进一步,所述第一发送模块,具体用于:
在应用程序启动且页面资源载入之前,发送所述第一标识列表给服务器。
进一步,所述第二发送模块,包括:
方法替换单元,用于在应用程序启动时,将应用程序中的原使用方法替换为目标使用方法,以当应用程序调用所述原使用方法时,跳转到所述目标使用方法,其中,所述原使用方法用于使用程序安装包中的图片,所述目标使用方法用于调用所述原使用方法,以及发送被使用图片的标识给服务器;
方法调用单元,用于当应用程序调用所述原使用方法时,所述目标使用方法被调用;
方法执行单元,用于通过所述目标使用方法使用程序安装包中的图片,并将被使用图片的标识发送给服务器。
进一步,所述删除模块,包括:
查找单元,用于根据所述第二标识列表中的标识,查找所述标识对应的冗余图片;
删除单元,用于删除所述冗余图片。
第四方面,本申请还提供一种程序安装包中冗余图片的删除装置,所述装置包括:
接收模块,用于接收客户端发送的第一标识列表和被使用图片的标识,所述第一标识列表包括所述程序安装包中所有冗余图片的标识,所述被使用图片的标识由所述客户端在所述程序安装包中的图片被使用时发送;
去重模块,用于根据所述被使用图片的标识对所述第一标识列表进行去重处理,得到第二标识列表;
发送模块,用于将所述第二标识列表返回给客户端。
进一步,所述装置还包括:
判断模块,用于当接收到客户端发送的被使用图片的标识时,判断是否接收到所述第一标识列表;
保存模块,用于如果未接收到所述第一标识列表,保存接收到的所述被使用图片的标识;
以及,所述去重模块具体用于,当接收到所述第一标识列表时,根据已经接收到的所述被使用图片的标识对所述第一标识列表进行去重处理。
进一步,所述去重模块,包括:
判断单元,用于判断所述被使用图片的标识在所述第一标识列表中是否存在;
删除单元,用于如果存在,则将所述被使用图片的标识在所述第一标识列表中删除。
第五方面,本申请还提供一种电子设备,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现权利要求第一方面和/或第二方面所述的方法。
第六方面,本申请还提供一种存储介质,所述存储介质中存储有计算机程序,当第三方面所述的装置和/或第四方面所述的装置的至少一个处理器执行所述计算机程序时,所述装置执行第一方面和/或第二方面所述的方法。
由以上技术方案可知,本申请实施例提供一种程序安装包中冗余图片的删除方法、装置、电子设备及存储介质,所述方法首先根据程序安装包生成第一标识列表,第一标识列表包括程序安装包中所有冗余图片的标识,然后发送第一标识列表给服务器;当程序安装包中的图片被使用时,发送被使用图片的标识给服务器,以使服务器根据被使用图片的标识对第一标识列表进行去重处理,得到第二标识列表;最后接收服务器返回的第二标识列表并根据第二标识列表删除程序安装包中的冗余图片。
本申请方法根据程序安装包自动生成第一标识列表,实现对冗余图片的初步查找,无需人工查找进而具有较高的查找效率,进一步,通过服务器对第一标识列表进行去重处理,可以将第一标识列表中可能包含的有用图片的标识剔除,进而确保第二标识列表的准确性,避免错误删除有用图片。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请根据一示例性实施例示出的程序安装包中冗余图片的删除方法流程图;
图2为本申请示例性示出的图1所示实施例中步骤110的细化流程;
图3为本申请示例性示出的图1所示实施例中步骤130的细化流程;
图4为本申请根据另一示例性实施例示出的程序安装包中冗余图片的删除方法流程图;
图5为本申请根据一示例性实施例示出的程序安装包中冗余图片的删除装置框图;
图6为本申请根据另一示例性实施例示出的程序安装包中冗余图片的删除装置框图;
图7为本申请根据另一示例性实施例示出的电子设备硬件结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
降低应用程序安装包体量的常规策略包括删除冗余代码、删除冗余图片、资源压缩和减少不必要的第三方库。其中,删除冗余代码所产生的效果并不明显,例如,即使删除大量无用的类、代码等减少的体量也不过是几KB;而如果为了降低程序安装包的体量而去删除第三方库,则是得不偿失的做法;因此,删除安装包中的冗余图片是目前最为有效的策略。
本申请提供一种删除程序安装包中冗余图片的方法,用于删除程序安装包中的冗余图片,目的是降低程序安装包的体量。本申请技术方案所应用的程序安装包可以基于不同的操作系统,例如IOS系统、Android系统或Windows系统,基于不同操作系统开发的程序安装包的类型不同,本申请实施例对程序安装包的类型以及对应的操作系统不予限定。
本申请实施例提供的删除程序安装包中冗余图片的方法,首先自动查找安装包中的冗余图片,并在程序运行过程中对自动查找结果进行去重处理,保证查找结果的精确性,从而在有效删除冗余图片以实现降低安装包体量的同时,避免错误地删除有用图片。图1为本申请根据一示例性实施例示出的程序安装包中冗余图片的删除方法流程图,如图1所示,该方法可以包括:
步骤110,根据程序安装包生成第一标识列表,该第一标识列表包括程序安装包中所有冗余图片的标识。
通过步骤110,初步查找程序安装包中所有的冗余图片,根据查找到的冗余图片的标识生成第一标识列表,图片的标识可以是该图片文件的名称。
在一些实施例中,步骤110具体可以包括图2所示步骤:
步骤111,获取程序安装包中所有图片的标识,根据所有图片的标识生成第零标识列表。
例如,通过遍历的方式查找程序安装包中所有后缀为JEPG(Joint PhotographicExperts Group,图像文件存储格式)、PNG(Portable Network Graphic Format,可移植网络图形格式)等图片类型的文件,并获取遍历到的图片文件的文件名称,以文件名称作为该图片文件的标识,保存到第零标识列表中。
步骤112,提取所述程序安装包中的图片关联文件,所述图片关联文件为与所述程序安装包中的有用图片关联的文件。
本实施例中,图片关联文件是指可能与程序安装包中的有用图片相关联的文件。图片关联文件可以包括两类,一类是界面资源结构文件和程序属性文件,其中,界面资源结构文件中可能包含有该程序安装包的UI界面所显示的图片文件,程序属性文件中可能包含有该程序的图标等图片文件;另一类是可执行文件,其中,可执行文件可能与该程序各功能所对应显示的图片相关联。
步骤113,根据所述图片关联文件包含的所述有用图片的标识,对所述第零标识列表进行去重处理,得到第一标识列表。
提取出图片关联文件后,分析提取出的图片关联文件的组成。
如果提取出的图片关联文件包括界面资源结构文件和程序属性文件,解析界面资源结构文件和程序属性文件,获取界面资源结构文件和程序属性文件中包含的图片的标识,并以从中获取出的标识全部作为有用图片的标识。
如果提取出的图片关联文件包括可执行文件,解析可执行文件对应的符号表,获取符号表中包含的可执行文件对应的图片的标识,并将从中获取除的标识全部作为有用图片的标识。其中,符号表是指可执行文件读出来的执行符号,包含有该可执行文件对应的图片的标识。
示例性地,以基于iOS系统的app安装包为例,由于界面资源结构文件的后缀为nil,程序属性文件的后缀为plist,因此可以通过遍历的方式从程序安装包中查找并提取出所有后缀为nil和plist的文件,保存在第一数组中,同时将程序安装包中所有的可执行文件保存在第一数组中;然后逐一获取第一数组中每个文件包含的图片的标识,将这些图片的标识视为有用图片的标识;最后包含在第零标识列表中的有用图片的标识在第零标识列表中删除,得到第一标识列表。
实际应用中,一些有用图片可能不与任何文件相关联,即通过图片关联文件获取到的有用图片的标识并不完全,进而导致第一标识列表除了包含所有冗余图片的标识外,可能还包括有用图片的标识,因此,如果按照第一标识列表执行图片删除操作,可能会造成图片误删,从而影响程序功能。
为了进一步提高删除冗余图片的精确性,在步骤120中,发送第一标识列表给服务器。
以及,在步骤130,当所述程序安装包中的图片被使用时,发送被使用图片的标识给服务器。
应用程序运行时一定会使用程序安装包中的图片,这些被使用的图片必然为有用图片。基于此,本申请利用应用程序可以服务器交互的特点,在应用程序开始使用程序安装包中的图片之前,将第一标识列表发送给服务器,在应用程序使用程序安装包中的图片之时,将被使用图片的标识发送给服务器,以利用服务器将第一标识列表中包含的被使用图片的标识在第一列表中删除,即根据接收到的被使用图片的标识对第一标识列表进行去重处理,得到第二标识列表。
为了避免漏掉被使用图片,向服务器发送第一标识列表的时机应当尽可能地早,因此在一些实施例中,当应用程序启动且页面资源载入之前,发送所述第一标识列表给服务器。
另外,在一些实施例中,步骤130可以进一步包括图3所示步骤:
步骤131,应用程序启动时,将应用程序中的原使用方法替换为目标使用方法,以当应用程序调用所述原使用方法时,跳转到所述目标使用方法,其中,所述原使用方法用于使用程序安装包中的图片,所述目标使用方法用于调用所述原使用方法,以及发送被使用图片的标识给服务器。
本申请中,原使用方法是指UIImageView使用程序安装包中图片的方法,例如XIB和UIImage,为了能够在UIImageView使用程序安装包中的图片时,应用程序可以自动将被使用图片的标识发送给服务器,本申请将原使用方法替换为目标使用方法,该目标使用方法在原使用方法的基础上添加获取被使用图片的标识及将被使用图片的标识发送给服务器的操作。具体实现时,可以通过对原使用方法执行HOOK操作实现方法替换。
步骤132,当应用程序调用所述原使用方法时,所述目标使用方法被调用。
由于已经将原使用方法替换成目标使用方法,因此在当应用程序调用原使用方法时,会跳转到调用目标使用方法。
步骤133,通过所述目标使用方法使用程序安装包中的图片,并将被使用图片的标识发送给服务器。
目标使用方法直接调用原使用方法以实现原本使用程序安装包中图片的功能;同时,从原使用方法中获取被使用图片的标识,并发送给服务器。
通过步骤130,可以实时将应用程序使用的图片的标识发送给服务器,若第一标识列表中包含这些被使用图片的标识,服务器则将其在第一标识列表删除,通过这种方式不断地完善第一标识列表,最终得到第二标识列表,并返回给应用程序。
步骤140,接收服务器返回的第二标识列表,所述第二标识列表为所述服务器根据所述被使用图片的标识对所述第一标识列表进行去重处理得到的标识列表。
具体的,所述去重处理的步骤包括:服务器判断被使用图片的标识在第一标识列表中是否存在;如果存在,则将被使用图片的标识在第一标识列表中删除。
步骤150,根据所述第二标识列表删除程序安装包中的冗余图片。
具体的,根据第二标识列表中的标识,查找所述标识对应的冗余图片,并删除冗余图片。
图4为本申请根据另一示例性实施例示出的程序安装包中冗余图片的删除方法流程图,应用于服务器,如图4所示,该方法可以包括:
步骤410,接收客户端发送的第一标识列表和被使用图片的标识,所述第一标识列表包括所述程序安装包中所有冗余图片的标识,所述被使用图片的标识由所述客户端在所述程序安装包中的图片被使用时发送。
本实施例中,客户端包括待处理的程序安装包和该程序安装包对应的应用程序。
步骤420,根据所述被使用图片的标识对所述第一标识列表进行去重处理,得到第二标识列表。
为了避免漏掉被使用图片,当服务器接收到客户端发送的被使用图片的标识时,判断是否接收到第一标识列表;如果未接收到第一标识列表,保存接收到的被使用图片的标识;当接收到第一标识列表时,根据已经接收到的被使用图片的标识对第一标识列表进行去重处理。
所述去重处理的步骤包括:服务器判断被使用图片的标识在第一标识列表中是否存在;如果存在,则将被使用图片的标识在第一标识列表中删除。服务器通过这种方式不断地完善第一标识列表,最终得到第二标识列表。
最后,在步骤430中,将第二标识列表返回给客户端。
由以上实施例可知,本申请提供一种程序安装包中冗余图片的删除方法,首先根据程序安装包生成第一标识列表,第一标识列表包括程序安装包中所有冗余图片的标识,然后发送第一标识列表给服务器;当程序安装包中的图片被使用时,发送被使用图片的标识给服务器,以使服务器根据被使用图片的标识对第一标识列表进行去重处理,得到第二标识列表;最后接收服务器返回的第二标识列表并根据第二标识列表删除程序安装包中的冗余图片。
本申请方法根据程序安装包自动生成第一标识列表,实现对冗余图片的初步查找,无需人工查找进而具有较高的查找效率,进一步,通过服务器对第一标识列表进行去重处理,可以将第一标识列表中可能包含的有用图片的标识剔除,进而确保第二标识列表的准确性,避免错误删除有用图片。
根据本申请实施例提供的程序安装包中冗余图片的删除方法,本申请实施例还提供一种程序安装包中冗余图片的删除装置,如图5所示,该装置可以包括:
生成模块510,用于根据程序安装包生成第一标识列表,所述第一标识列表包括所述程序安装包中所有冗余图片的标识;第一发送模块520,用于发送所述第一标识列表给服务器;第二发送模块530,用于当所述程序安装包中的图片被使用时,发送被使用图片的标识给服务器;接收模块540,用于接收服务器返回的第二标识列表,所述第二标识列表为所述服务器根据所述被使用图片的标识对所述第一标识列表进行去重处理得到的标识列表;删除模块550,用于根据所述第二标识列表删除程序安装包中的冗余图片。
在一些实施例中,所述生成模块510包括:第一获取单元,用于获取程序安装包中所有图片的标识,根据所有图片的标识生成第零标识列表;第二获取单元,用于提取所述程序安装包中的图片关联文件,所述图片关联文件为与所述程序安装包中的有用图片相关联的文件;去重单元,用于根据所述图片关联文件包含的所述有用图片的标识,对所述第零标识列表进行去重处理,得到第一标识列表。
在一些实施例中,所述第一发送模块520具体用于,在应用程序启动且页面资源载入之前,发送所述第一标识列表给服务器。
在一些实施例中,所述第二发送模块530包括:方法替换单元,用于在应用程序启动时,将应用程序中的原使用方法替换为目标使用方法,以当应用程序调用所述原使用方法时,跳转到所述目标使用方法,其中,所述原使用方法用于使用程序安装包中的图片,所述目标使用方法用于调用所述原使用方法,以及发送被使用图片的标识给服务器;方法调用单元,用于当应用程序调用所述原使用方法时,所述目标使用方法被调用;方法执行单元,用于通过所述目标使用方法使用程序安装包中的图片,并将被使用图片的标识发送给服务器。
在一些实施例中,所述删除模块550包括:查找单元,用于根据所述第二标识列表中的标识,查找所述标识对应的冗余图片;删除单元,用于删除所述冗余图片。
根据本申请实施例提供的程序安装包中冗余图片的删除方法,本申请实施例还提供一种程序安装包中冗余图片的删除装置,如图6所示,该装置可以包括:
接收模块610,用于接收客户端发送的第一标识列表和被使用图片的标识,所述第一标识列表包括所述程序安装包中所有冗余图片的标识,所述被使用图片的标识由所述客户端在所述程序安装包中的图片被使用时发送;去重模块620,用于根据所述被使用图片的标识对所述第一标识列表进行去重处理,得到第二标识列表;发送模块630,用于将所述第二标识列表返回给客户端。
在一些实施例中,所述装置还包括:判断模块,用于当接收到客户端发送的被使用图片的标识时,判断是否接收到所述第一标识列表;保存模块,用于如果未接收到所述第一标识列表,保存接收到的所述被使用图片的标识;
其中,所述去重模块620具体用于,当接收到所述第一标识列表时,根据已经接收到的所述被使用图片的标识对所述第一标识列表进行去重处理。
在一些实施例中,所述去重模块620包括:判断单元,用于判断所述被使用图片的标识在所述第一标识列表中是否存在;删除单元,用于如果存在,则将所述被使用图片的标识在所述第一标识列表中删除。
图7为本申请实施例提供的电子设备的硬件结构示意图。如图7所示,该电子设备,可以包括:存储器701,用于存储程序指令;处理器702,用于调用并执行所述存储器中的程序指令,以实现上述程序安装包中冗余图片的删除方法。
本实施例中,处理器和存储器可通过总线或其他方式连接。处理器可以是通用处理器,例如中央处理器、数字信号处理器、专用集成电路,或者被配置成实施本发明实施例的一个或多个集成电路。存储器可以包括易失性存储器,例如随机存取存储器;存储器也可以包括非易失性存储器,例如只读存储器、快闪存储器、硬盘或固态硬盘。
具体实现中,本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有计算程序,当程序安装包中冗余图片的删除装置的至少一个处理器执行所述计算机程序时,获取程序安装包中冗余图片的删除装置执行本申请程序安装包中冗余图片的删除方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于装置、电子设备及存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
以上所述的本发明实施方式并不构成对本发明保护范围的限定。
Claims (18)
1.一种程序安装包中冗余图片的删除方法,其特征在于,所述方法包括:
根据程序安装包生成第一标识列表,所述第一标识列表包括所述程序安装包中所有冗余图片的标识;
发送所述第一标识列表给服务器;
当所述程序安装包中的图片被使用时,发送被使用图片的标识给服务器;
接收服务器返回的第二标识列表,所述第二标识列表为所述服务器根据所述被使用图片的标识对所述第一标识列表进行去重处理得到的标识列表;
根据所述第二标识列表删除程序安装包中的冗余图片。
2.根据权利要求1所述的删除方法,其特征在于,所述根据程序安装包生成第一标识列表,包括:
获取程序安装包中所有图片的标识,根据所有图片的标识生成第零标识列表;
提取所述程序安装包中的图片关联文件,所述图片关联文件为与所述程序安装包中的有用图片相关联的文件;
根据所述图片关联文件包含的所述有用图片的标识,对所述第零标识列表进行去重处理,得到第一标识列表。
3.根据权利要求1所述的删除方法,其特征在于,所述发送第一标识列表给服务器,包括:
在应用程序启动且页面资源载入之前,发送所述第一标识列表给服务器。
4.根据权利要求1所述的删除方法,其特征在于,所述当程序安装包中的图片被使用时,发送被使用图片的标识给服务器,包括:
应用程序启动时,将应用程序中的原使用方法替换为目标使用方法,以当应用程序调用所述原使用方法时,跳转到所述目标使用方法,其中,所述原使用方法用于使用程序安装包中的图片,所述目标使用方法用于调用所述原使用方法,以及发送被使用图片的标识给服务器;
当应用程序调用所述原使用方法时,所述目标使用方法被调用;
通过所述目标使用方法使用程序安装包中的图片,并将被使用图片的标识发送给服务器。
5.根据权利要求1-4任一项所述的删除方法,其特征在于,所述根据第二标识列表删除程序安装包中的冗余图片,包括:
根据所述第二标识列表中的标识,查找所述标识对应的冗余图片;
删除所述冗余图片。
6.一种程序安装包中冗余图片的删除方法,其特征在于,所述方法包括:
接收客户端发送的第一标识列表和被使用图片的标识,所述第一标识列表包括所述程序安装包中所有冗余图片的标识,所述被使用图片的标识由所述客户端在所述程序安装包中的图片被使用时发送;
根据所述被使用图片的标识对所述第一标识列表进行去重处理,得到第二标识列表;
将所述第二标识列表返回给客户端。
7.根据权利要求6所述的删除方法,其特征在于:
当接收到客户端发送的被使用图片的标识时,判断是否接收到所述第一标识列表;
如果未接收到所述第一标识列表,保存接收到的所述被使用图片的标识;
当接收到所述第一标识列表时,根据已经接收到的所述被使用图片的标识对所述第一标识列表进行去重处理。
8.根据权利要求6或7所述的删除方法,其特征在于,所述根据所述使用图片的标识对所述第一标识列表进行去重处理,包括:
判断所述被使用图片的标识在所述第一标识列表中是否存在;
如果存在,则将所述被使用图片的标识在所述第一标识列表中删除。
9.一种程序安装包中冗余图片的删除装置,其特征在于,所述装置包括:
生成模块,用于根据程序安装包生成第一标识列表,所述第一标识列表包括所述程序安装包中所有冗余图片的标识;
第一发送模块,用于发送所述第一标识列表给服务器;
第二发送模块,用于当所述程序安装包中的图片被使用时,发送被使用图片的标识给服务器;
接收模块,用于接收服务器返回的第二标识列表,所述第二标识列表为所述服务器根据所述被使用图片的标识对所述第一标识列表进行去重处理得到的标识列表;
删除模块,用于根据所述第二标识列表删除程序安装包中的冗余图片。
10.根据权利要求9所述的删除装置,其特征在于,所述生成模块,包括:
第一获取单元,用于获取程序安装包中所有图片的标识,根据所有图片的标识生成第零标识列表;
第二获取单元,用于提取所述程序安装包中的图片关联文件,所述图片关联文件为与所述程序安装包中的有用图片相关联的文件;
去重单元,用于根据所述图片关联文件包含的所述有用图片的标识,对所述第零标识列表进行去重处理,得到第一标识列表。
11.根据权利要求9所述的删除装置,其特征在于,所述第一发送模块,具体用于:
在应用程序启动且页面资源载入之前,发送所述第一标识列表给服务器。
12.根据权利要求9所述的删除装置,其特征在于,所述第二发送模块,包括:
方法替换单元,用于在应用程序启动时,将应用程序中的原使用方法替换为目标使用方法,以当应用程序调用所述原使用方法时,跳转到所述目标使用方法,其中,所述原使用方法用于使用程序安装包中的图片,所述目标使用方法用于调用所述原使用方法,以及发送被使用图片的标识给服务器;
方法调用单元,用于当应用程序调用所述原使用方法时,所述目标使用方法被调用;
方法执行单元,用于通过所述目标使用方法使用程序安装包中的图片,并将被使用图片的标识发送给服务器。
13.根据权利要求9-12任一项所述的删除装置,其特征在于,所述删除模块,包括:
查找单元,用于根据所述第二标识列表中的标识,查找所述标识对应的冗余图片;
删除单元,用于删除所述冗余图片。
14.一种程序安装包中冗余图片的删除装置,其特征在于,所述装置包括:
接收模块,用于接收客户端发送的第一标识列表和被使用图片的标识,所述第一标识列表包括所述程序安装包中所有冗余图片的标识,所述被使用图片的标识由所述客户端在所述程序安装包中的图片被使用时发送;
去重模块,用于根据所述被使用图片的标识对所述第一标识列表进行去重处理,得到第二标识列表;
发送模块,用于将所述第二标识列表返回给客户端。
15.根据权利要求14所述的删除装置,其特征在于,所述装置还包括:
判断模块,用于当接收到客户端发送的被使用图片的标识时,判断是否接收到所述第一标识列表;
保存模块,用于如果未接收到所述第一标识列表,保存接收到的所述被使用图片的标识;
以及,所述去重模块具体用于,当接收到所述第一标识列表时,根据已经接收到的所述被使用图片的标识对所述第一标识列表进行去重处理。
16.根据权利要求14或15所述的删除装置,其特征在于,所述去重模块,包括:
判断单元,用于判断所述被使用图片的标识在所述第一标识列表中是否存在;
删除单元,用于如果存在,则将所述被使用图片的标识在所述第一标识列表中删除。
17.一种电子设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现权利要求1-8任一项所述的方法。
18.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,当权利要求9-13任一项所述的装置和/或权利要求14-16任一项所述的装置的至少一个处理器执行所述计算机程序时,所述装置执行权利要求1-5任一项和/或权利要求6-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911346715.1A CN111045698A (zh) | 2019-12-24 | 2019-12-24 | 冗余图片的删除方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911346715.1A CN111045698A (zh) | 2019-12-24 | 2019-12-24 | 冗余图片的删除方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111045698A true CN111045698A (zh) | 2020-04-21 |
Family
ID=70238919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911346715.1A Pending CN111045698A (zh) | 2019-12-24 | 2019-12-24 | 冗余图片的删除方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111045698A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112306542A (zh) * | 2020-10-30 | 2021-02-02 | 北京奇艺世纪科技有限公司 | 一种应用程序包处理方法、装置、电子设备及存储介质 |
CN112306507A (zh) * | 2020-10-12 | 2021-02-02 | 北京自如信息科技有限公司 | 一种图片资源处理方法、装置、终端及存储介质 |
CN114279160A (zh) * | 2020-12-29 | 2022-04-05 | 海信视像科技股份有限公司 | 冰箱及食材管理界面的更新方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970516A (zh) * | 2013-01-30 | 2014-08-06 | 腾讯科技(深圳)有限公司 | 冗余图片删除方法及装置 |
CN105282238A (zh) * | 2015-09-16 | 2016-01-27 | 深圳市茁壮网络股份有限公司 | 一种资源管理方法 |
CN106708565A (zh) * | 2016-11-29 | 2017-05-24 | 武汉斗鱼网络科技有限公司 | 一种清除apk中无用图片资源的方法及装置 |
CN109828777A (zh) * | 2018-12-06 | 2019-05-31 | 珠海西山居互动娱乐科技有限公司 | 一种手游安装包优化方法及系统 |
CN110413282A (zh) * | 2019-08-01 | 2019-11-05 | 腾讯科技(深圳)有限公司 | 一种冗余资源处理方法、装置、设备及存储介质 |
-
2019
- 2019-12-24 CN CN201911346715.1A patent/CN111045698A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970516A (zh) * | 2013-01-30 | 2014-08-06 | 腾讯科技(深圳)有限公司 | 冗余图片删除方法及装置 |
CN105282238A (zh) * | 2015-09-16 | 2016-01-27 | 深圳市茁壮网络股份有限公司 | 一种资源管理方法 |
CN106708565A (zh) * | 2016-11-29 | 2017-05-24 | 武汉斗鱼网络科技有限公司 | 一种清除apk中无用图片资源的方法及装置 |
CN109828777A (zh) * | 2018-12-06 | 2019-05-31 | 珠海西山居互动娱乐科技有限公司 | 一种手游安装包优化方法及系统 |
CN110413282A (zh) * | 2019-08-01 | 2019-11-05 | 腾讯科技(深圳)有限公司 | 一种冗余资源处理方法、装置、设备及存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112306507A (zh) * | 2020-10-12 | 2021-02-02 | 北京自如信息科技有限公司 | 一种图片资源处理方法、装置、终端及存储介质 |
CN112306542A (zh) * | 2020-10-30 | 2021-02-02 | 北京奇艺世纪科技有限公司 | 一种应用程序包处理方法、装置、电子设备及存储介质 |
CN112306542B (zh) * | 2020-10-30 | 2023-09-05 | 北京奇艺世纪科技有限公司 | 一种应用程序包处理方法、装置、电子设备及存储介质 |
CN114279160A (zh) * | 2020-12-29 | 2022-04-05 | 海信视像科技股份有限公司 | 冰箱及食材管理界面的更新方法 |
CN114279160B (zh) * | 2020-12-29 | 2023-10-13 | 海信视像科技股份有限公司 | 冰箱及食材管理界面的更新方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110221872B (zh) | 页面跳转方法、装置、电子设备和存储介质 | |
CN111061643B (zh) | Sdk集群的兼容性检测方法、装置、电子设备及存储介质 | |
CN111045698A (zh) | 冗余图片的删除方法、装置、电子设备及存储介质 | |
CN105867947A (zh) | 预置应用程序升级后的数据处理方法及装置 | |
CN109933350B (zh) | 在应用中嵌入代码的方法、装置及电子设备 | |
CN112817657B (zh) | 一种应用程序启动项加载方法、装置、系统及存储介质 | |
CN111694733A (zh) | 一种软件开发工具包sdk的api测试方法以及测试装置 | |
CN105760183A (zh) | 文件处理方法、装置及通信系统 | |
CN111258680A (zh) | 资源加载方法和装置、存储介质及电子装置 | |
CN110135163B (zh) | 一种基于目标应用的安全检测方法、装置及系统 | |
CN114253587A (zh) | 应用程序更新方法、装置、电子设备及可读存储介质 | |
CN117270873A (zh) | 一种基于Android应用的实时编译方法、装置、设备及介质 | |
CN108446144B (zh) | 一种应用程序启动方法、装置、终端及存储介质 | |
CN111556127A (zh) | 一种可穿戴设备升级方法及相关设备 | |
CN111767417A (zh) | 应用图片的管理方法、装置、设备及存储介质 | |
CN113377382B (zh) | 一种软件安装包的处理方法、装置、电子设备及存储介质 | |
CN107783837B (zh) | 一种进行存储扩展的方法、装置及电子设备 | |
CN114359464A (zh) | 一种基于glsl es的图像渲染方法及装置 | |
CN110795094B (zh) | 一种页面组件引用方法以及页面组件引用装置 | |
CN114327548A (zh) | 软件升级方法及相关装置 | |
CN110888686B (zh) | 应用程序启动方法、设备和存储介质 | |
CN109840273B (zh) | 一种文案生成方法和装置 | |
CN114398073B (zh) | 基于rn的应用更新方法及装置 | |
CN108932263B (zh) | 一种关联对象追踪方法及装置 | |
CN111596961B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200421 |
|
RJ01 | Rejection of invention patent application after publication |