CN109857548B - 存储空间优化方法、装置、计算机设备及存储介质 - Google Patents
存储空间优化方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN109857548B CN109857548B CN201910008236.2A CN201910008236A CN109857548B CN 109857548 B CN109857548 B CN 109857548B CN 201910008236 A CN201910008236 A CN 201910008236A CN 109857548 B CN109857548 B CN 109857548B
- Authority
- CN
- China
- Prior art keywords
- file
- storage
- stored
- application program
- executing
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种存储空间优化方法、装置、计算机设备及存储介质,该方法包括:S11、生成文件存储表;S12、判断是否接收到存储指令,若是,执行步骤S13;S13、获取待存储文件的唯一标识信息,并查找文件存储表中是否存在待存储文件的唯一标识信息,若是,执行步骤S14,否则执行步骤S15;S14、查找文件存储表中是否存在待存储文件对应的本地存储地址,若是,在文件存储表中,将待存储文件对应的存储次数加1,否则,存储待存储文件,并在文件存储表中,将待存储文件对应的存储次数设为1;S15、存储待存储文件,并在文件存储表中增加待存储文件的相应存储信息,其中,待存储文件对应的存储次数设为1。本发明能够解决应用程序重复存储文件于本地的问题。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种存储空间优化方法、装置、计算机设备及存储介质。
背景技术
随着智能终端的发展,用户可以通过在终端上安装各种APP,存储各种文件比如图片、视频文件、下载文件等,而且往往会出现重复存储文件的情况。例如,在使用微信时,可能会收到不同微信好友发送的相同文件,这些文件重复下载并存储于本地。由于每个文件都会占用一定的存储空间,日积月累,终端有限资源会被逐渐用尽,导致终端本地存储资源不足。存储资源不足将导致操作系统反应慢,很多程序无法正常使用,比如导致应用软件无法在后台接收消息,或者使得用户无法增加或更新智能终端中的应用软件,无法存储更多的图像等,致使用户的期望操作无法正常进行,影响用户的终端使用体验。
发明内容
针对述上述现有技术的不足,本发明的目的在于提供一种存储空间优化方法、装置、计算机设备及存储介质,以解决应用程序重复存储文件于智能终端,浪费本地存储空间的问题。
为了实现上述目的,本发明提供一种存储空间优化方法,用于优化应用程序占用的本地存储空间,该方法包括在所述应用程序处于前台运行状态时,执行以下文件存储步骤:
S11、生成文件存储表以存储所述应用程序在本地存储的各文件的存储信息,所述存储信息包括本地存储地址、存储次数、唯一标识信息和存储时间;
S12、判断是否接收到来自所述应用程序的存储指令,若是,则执行步骤S13,其中所述存储指令包含待存储文件;
S13、获取所述待存储文件的唯一标识信息,并查找所述文件存储表中是否存在所述待存储文件的唯一标识信息,若是,则执行步骤S14,否则执行步骤S15;
S14、查找所述文件存储表中是否存在所述待存储文件对应的本地存储地址,若是,则在所述文件存储表中,将所述待存储文件对应的存储次数加1,且将存储时间设为当前时间,否则,存储所述待存储文件,并在所述文件存储表中,将所述待存储文件对应的存储次数设为1、存储时间设为当前时间;
S15、存储所述待存储文件,并在所述文件存储表中增加所述待存储文件的相应所述存储信息,其中,所述待存储文件对应的存储次数设为1、存储时间设为当前时间。
进一步地,所述步骤S11还包括:设定所述应用程序对应的本地存储上限参数MaxAmout并对MaxAmou赋初始值,以及设定所述应用程序对应的文件定时清理时间Tcleaning并对Tcleaning赋初始值。
进一步地,所述存储空间优化方法还包括在执行所述步骤S13之前,执行以下第一自动清理步骤:
S21、获取所述待存储文件的大小fileAmout以及所述应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断此时fileAmout与LocalAmout的当前值之和是否大于MaxAmout的当前值,若是,执行步骤S22,否则,执行步骤S13;
S22、删除当前所述应用程序在本地存储的所有文件中存储时间与当前时间的时间差大于Tcleaning的第一超时文件,同时在所述文件存储表中,将删除的第一超时文件对应的本地存储地址删除;
S23、再次获取所述应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断此时fileAmout与LocalAmout的当前值之和是否仍大于MaxAmout的当前值,若是执行步骤S24,否则执行步骤S13;
S24、根据公式MaxAmout=LocalAmout的当前值+fileAmout+D更新MaxAmout的值,而后执行步骤S13,其中,D为预设的预留空间大小。
进一步地,所述存储空间优化方法还包括在所述应用程序启动或退入后台运行或退出时,执行以下第二自动清理步骤:
S31、删除当前所述应用程序在本地存储的所有文件中存储时间与当前时间的时间差大于Tcleaning的第二超时文件,同时在所述文件存储表中,将删除的第二超时文件对应的本地存储地址删除。
进一步地,所述第二自动清理步骤还包括:在执行所述步骤S31之后,继续执行以下步骤:
S32、判断MaxAmout的当前值是否大于MaxAmout的初始值,若是,则执行步骤S33;
S33、获取所述应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断LocalAmout的当前值是否小于MaxAmout的初始值,若是,则执行步骤S34,否则执行步骤35;
S34、将MaxAmout的值设为MaxAmout的初始值;
S35、将MaxAmout的值设为LocalAmout的当前值。
进一步地,所述存储空间优化方法还包括在所述应用程序处于前台运行状态时,执行以下文件删除步骤:
S41、判断是否接收到来自所述应用程序的删除指令,若是,则执行步骤S42,其中所述删除指令包含待删除文件;
S42、在所述文件存储表中,将所述待删除文件对应的存储次数减1,而后判断所述待删除文件对应的存储次数是否为0,若是,则判断所述待删除文件对应的本地存储地址是否为空,若是,执行步骤S43,否则执行步骤44;
S43、在所述文件存储表中,删除所述待删文件对应的所述存储信息;
S44、在本地删除所述待删除文件,同时在所述文件存储表中删除所述待删文件的所述存储信息。
进一步地,所述存储空间优化方法还包括在所述应用程序处于前台运行状态时,执行以下文件清空步骤:
S51、判断是否接收到清空所述应用程序在本地存储的所有文件的清空指令,若是,执行步骤S52;
S52、删除所述应用程序在本地存储的所有文件,并删除所述文件存储表中所有文件对应的存储信息。
为了实现上述目的,本发明还提供一种存储空间优化装置,用于优化应用程序占用的本地存储空间,该装置包括文件存储模块,所述文件存储模块包括:
存储表生存单元,用于生成文件存储表以存储所述应用程序在本地存储的各文件的存储信息,所述存储信息包括本地存储地址、存储次数、唯一标识信息和存储时间;
存储指令接收判断单元,用于判断是否接收到来自所述应用程序的存储指令,所述存储指令包含待存储文件;
唯一标识信息获取单元,用于获取所述待存储文件的唯一标识信息;
唯一标识信息查找单元,用于查找所述文件存储表中是否存在所述待存储文件的唯一标识信息;
第一本地存储地址查找单元,用于在所述唯一标识信息查找模块的查找结果为是时,查找所述文件存储表中是否存在所述待存储文件对应的本地存储地址;
存储单元,用于在所述第一本地存储地址查找模块的查找结果为是时,将所述待存储文件对应的存储次数加1,且将存储时间设为当前时间;还用于在所述第一本地存储地址查找模块的查找结果为否时,存储所述待存储文件,并将所述待存储文件对应的存储次数设为1、存储时间设为当前时间;还用于在所述唯一标识信息查找模块的查找结果为否时,存储所述待存储文件,并在所述文件存储表中增加所述待存储文件的相应所述存储信息,其中,所述待存储文件对应的存储次数设为1、存储时间设为当前时间。
进一步地,所述文件存储模块还包括:初始化单元,用于设定所述应用程序对应的本地存储上限参数MaxAmout并对MaxAmou赋初始值,以及设定所述应用程序对应的文件定时清理时间Tcleaning并对Tcleaning赋初始值。
进一步地,所述存储空间优化装置还包括第一自动清理模块,所述第一自动清理模块包括:
第一超容量判断单元,用于在接收到所述存储指令后,获取所述待存储文件的大小fileAmout以及所述应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断此时fileAmout与LocalAmout的当前值之和是否大于MaxAmout的当前值;
第一删除单元,用于在所述第一超容量判断单元的判断结果为是时,删除当前所述应用程序在本地存储的所有文件中存储时间与当前时间的时间差大于Tcleaning的第一超时文件,同时在所述文件存储表中,将删除的第一超时文件对应的本地存储地址删除;
第二超容量判断单元,用于在所述第一删除单元执行相应操作后,再次获取所述应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断此时fileAmout与LocalAmout的当前值之和是否仍大于MaxAmout的当前值;
第一存储上限参数更新单元,用于在所述第二超容量判断单元的判断结果为是时,根据公式MaxAmout=LocalAmout的当前值+fileAmout+D更新MaxAmout的值,其中,D为预设的预留空间大小。
进一步地,所述存储空间优化装置还包括第二自动清理模块,所述第二自动清理模块包括:
第二删除单元,用于在所述应用程序启动或退入后台运行或退出时,删除所述应用程序在本地存储的所有文件中存储时间与当前时间的时间差大于Tcleaning的文件,同时在所述文件存储表中,将删除的文件对应的本地存储地址删除。
进一步地,所述第二自动清理模块还包括:
存储上限参数判断单元,用于判断MaxAmout的当前值是否大于MaxAmout的初始值;
比较单元,用于获取所述应用程序当前在本地存储的所有文件的总大小LocalAmout,并比较LocalAmout的当前值与MaxAmout的初始值的大小;
第二存储上限参数更新单元,用于在所述比较单元判定LocalAmout的当前值小于MaxAmout的初始值时,将MaxAmout的值设为MaxAmout的初始值;
第三存储上限参数更新单元,用于在所述比较单元判定LocalAmout的当前值大于或等于MaxAmout的初始值时,将MaxAmout的值设为LocalAmout的当前值。
进一步地,所述存储空间优化装置还包括文件删除模块,所述文件删除模块包括:
删除指令接收判断单元,用于判断是否接收到来自所述应用程序的删除指令,所述删除指令包含待删除文件;
存储次数递减单元,用于在所述删除指令接收判断单元的判断结果为是时,在所述文件存储表中,将所述待删除文件对应的存储次数减1;
存储次数判断单元,用于判断所述存储次数递减单元在将所述待删除文件对应的存储次数减1后,所述待删除文件对应的存储次数是否为0;
第二本地存储地址查找单元,用于在所述存储次数判断单元的判断结果为是时,在所述文件存储表中,查找所述待删除文件对应的本地存储地址是否为空;
第三删除单元,用于在所述第二本地存储地址查找单元的查找结果为是时,在所述文件存储表中,删除所述待删除文件对应的所述存储信息;
第四删除单元,用于在所述第二本地存储地址查找单元的查找结果为否时,在本地删除所述待删除文件,同时在所述文件存储表中删除所述待删除文件的所述存储信息。
进一步地,所述存储空间优化装置还包括文件清空模块,所述文件清空模块包括:
清空指令接收判断单元,用于判断是否接收到清空所述应用程序在本地存储的所有文件的清空指令;
清空单元,用于在所述清空指令接收判断单元的判断结果为是时,删除所述应用程序在本地存储的所有文件,并删除所述文件存储表中所有文件对应的存储信息。
为了实现上述目的,本发明还提供一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述方法的步骤。
为了实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述方法的步骤。
通过采用上述技术主案,本发明具有如下有益效果:
1、本发明在应用程序需存储文件时,首先查找所述文件存储表中是否存在所述待存储文件对应的唯一标识信息和本地存储地址,若存在,说明该文件已被存储过,则不再进行存储而只在文件存储表中将该文件对应的存储次数加1,从而防止应用程序重复存储文件,导致占用的存储空间浪费。
2、本发明在应用程序启动或回到后台运行或退出时会自动清理掉存储时间超期文件;在应用程序的前台运行过程中,当待存储文件与应用程序在本地已存储的所有文件的总大小LocalAmout之和大于MaxAmout时,也会清理掉存储时间超期的文件,防止日积月累,本地存储空间被逐渐用尽,导致终端存储资源不足。
3、此外,本发明在删除文件时,会更新相应的参数,会在文件存储表中进行相应的变动,还会根据文件存储表中的存储次数采取不同的操作,从而保证应用程序文件的正常操作和使用。
附图说明
图1为本发明存储空间优化方法的文件存储步骤的流程图;
图2为本发明存储空间优化方法的第一自动清理步骤的流程图;
图3为本发明存储空间优化方法的第二自动清理步骤的流程图;
图4为本发明存储空间优化方法的文件删除步骤的流程图;
图5为本发明存储空间优化方法的文件清空步骤的流程图;
图6为本发明存储空间优化装置中的文件存储模块的结构框图;
图7为本发明存储空间优化装置中的第一自动清理模块的结构框图;
图8为本发明存储空间优化装置中的第二自动清理模块的结构框图;
图9为本发明存储空间优化装置中的文件删除模块的结构框图;
图10为本发明存储空间优化装置中的文件清空模块的结构框图;
图11为本发明计算机设备的硬件架构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明提供一种存储空间优化方法,用于优化应用程序(如微信)占用的本地存储空间,如图1所示,该方法包括以下文件存储步骤:
S11、在应用程序首次启动时,生成文件存储表以存储该应用程序在本地存储的各文件对应的存储信息,该存储信息包括本地存储地址、网络地址、存储次数、唯一标识信息和存储时间;同时设定应用程序对应的本地存储上限参数MaxAmout并对MaxAmou赋初始值(如500M),以及设定应用程序对应的文件定时清理时间Tcleaning并对Tcleaning赋初始值(如7天)。
S12、在应用程序处于前台运行的过程中,当安装应用程序的智能终端接收到来自应用程序的存储指令时,则执行步骤S13,其中,该存储指令包含待存储文件。
S13、获取待存储文件的唯一标识信息,并查找文件存储表中是否存在待存储文件的唯一标识信息,若是,表示该存储文件之前已被存储过,则执行步骤S14,否则,表示该存储文件为首次存储,则执行步骤S15。在本实施例中,待存储文件的唯一标识信息优选采用待存储文件的MD5值,文件的MD5值作为文件的“数字指纹”,不同文件的MD5值是不同的,如果对文件做了任何改动,其MD5值也会相应发生变化。
S14、查找文件存储表中是否存在待存储文件对应的本地存储地址,若是,说明该待存储文件当前存储于本地,则不再重复存储该待存储文件,只要在文件存储表中,将待存储文件对应的存储次数加1、存储时间设为当前时间即可,否则,说明该待存储文件虽然被存储过,但已在自动清理步骤中被清理掉,因此需要再次将待存储文件存储于本地,并在文件存储表中,将待存储文件对应的存储次数设为1,且将存储时间设为当前时间。
S15、存储待存储文件,并在文件存储表中增加待存储文件的对应存储信息,其中,待存储文件的存储信息设置如下:本地存储地址设为待存储文件在本地的存储地址、网络地址设为待存储文件的网络下载地址、存储次数设为1、存储时间设为当前时间、唯一标识信息设为待存储文件的MD5值。
综上,本发明在存储待存储文件时,若查找到文件存储表中存在待存储文件对应的唯一标识信息和本地存储地址,说明该文件已被存储过,则不再进行存储而只在文件存储表中将该文件对应的存储次数加1,从而防止应用程序重复存储文件,导致占用的存储空间浪费。例如,在微信聊天过程中,假设有两个聊天框引用了文件A,根据本发明则仅在本地存储文件A一次,但文件A对应的存储次数设为2。
在本实施例中,存储空间优化方法还包括在执行步骤S13之前,执行以下第一自动清理步骤,以在待存储文件的大小fileAmout与应用程序当前在本地已存储的所有文件的总大小LocalAmout之和大于MaxAmout时,自动清理掉部分存储时间较长的文件,其中,如图2所示,第一自动清理步骤的具体过程如下:
S21、获取待存储文件的大小fileAmout以及应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断此时fileAmout与LocalAmout的当前值之和是否大于MaxAmout的当前值,若是,说明若将待存储文件存储于本地后将超过本地存储上限,则执行步骤S22,否则,说明即使将待存储文件存储于本地也不会超过本地存储上限,则执行步骤S13。
S22、删除当前应用程序在本地存储的所有文件中存储时间与当前时间的时间差大于Tcleaning的第一超时文件,同时在文件存储表中,将删除的第一超时文件对应的本地存储地址删除、网络地址保存不变。保留网络地址是因为本步骤为自动清理步骤,而并非根据用户删除需要进行的删除操作,因此保留网络地址以便以后用户需再次查看删除的第一超时文件时可以通过网络地址下载。
S23、再次获取应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断此时fileAmout与LocalAmout的当前值之和是否仍大于MaxAmout的当前值,若是,说明即使将第一超时文件删除后再将待存储文件存储于本地仍会超过本地存储上限,则执行步骤S24以对MaxAmout进行更新,否则,说明将第一超时文件删除后再将待存储文件存储于本地而并不会超过本地存储上限,则执行步骤S13-S15以对待存储文件进行存储。
S24、根据公式MaxAmout=LocalAmout的当前值+fileAmout+D更新MaxAmout的值,而后执行步骤S13,其中,D为预设的预留空间大小,如5M。
在本实施例中,存储空间优化方法还包括在应用程序启动或回到后台运行或退出时,执行一次如图3所示的第二自动清理步骤:
S31、删除当前应用程序在本地存储的所有文件中存储时间与当前时间的时间差大于Tcleaning的第二超时文件,同时在文件存储表中,将删除的第二超时文件对应的本地存储地址删除、网络地址保存不变。其中,保留网络地址是因为本步骤为自动删除步骤,而并非根据用户删除需要进行的删除操作,因此保留网络地址以便以后用户需再次查看删除的第二超时文件时可以通过网络地址下载。
S32、判断此时MaxAmout的当前值是否大于MaxAmout的初始值,若是,则执行步骤S33。
S33、获取应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断LocalAmout的当前值是否小于MaxAmout的初始值,若是,则执行步骤S34,否则执行步骤S35。
S34、将MaxAmout的值设为MaxAmout的初始值。
S35、将MaxAmout的值设为LocalAmout的当前值。
本实施例执行步骤S33-S36的目的是为了在文件清理步骤完成后自动更新MaxAmout的值,这是因为在:存储文件的过程中,可能因执行了步骤S24导致MaxAmout的值变大,当步骤S31删除一些文件后,文件总大小LocalAmout的值将变小,此时适应性地将MaxAmout的值调整回其初始值(当LocalAmout小于或等于MaxAmout的初始值)或者与当前文件总大小的值相等(当LocalAmout大于MaxAmout的初始值),以防止经过多次执行步骤S24后使MaxAmout变得过大,导致应用程序占用本地存储空间过大。其中,本发明仅在应用程序启动或回到后台运行或退出的信息时执行一次第二自动清理步骤,而并不会在应用程序的前台运行过程中执行第二自动清理步骤,这是因为:在应用程序的前台运行过程中,第二超时文件可能需要被用到,若无条件清理则可能带来不便。
在本实施例中,当应用程序处于前台运行过程中时,可能需要删除本地存储的指定文件,因此本发明存储空间优化方法还包括如图4所示的文件删除步骤:
S41、判断是否接收到来自应用程序的删除指令,该删除指令包含待删除文件,若是,执行步骤S42。
S42、在文件存储表中,将待删除文件对应的存储次数减1,其它存储信息不变;而后判断待删除文件对应的存储次数是否为0,若是,则判断待删除文件对应的本地存储地址是否为空,若是,执行步骤S43,否则执行步骤S44;
S43、当待删除文件对应的本地存储地址为空时,说明在前述自动清理过程中已经删除了待删除文件,无需再次对其进行删除,则在文件存储表中,删除待删文件对应的存储信息即可;
S44、当待删除文件对应的本地存储地址不为空时,说明待删除文件仍存储于要本地,则在本地删除该待删除文件,同时在文件存储表中删除待删文件的存储信息。
在本实施例中,存储空间优化方法还包括:当用户需要清空应用程序在本地存储的所有文件时,执行如图5所示的文件清空步骤:
S51、判断是否接收到清空应用程序在本地存储的所有文件的清空指令,若是,执行步骤S52;
S52、删除应用程序在本地存储的所有文件,并删除文件存储表中所有文件对应的存储信息。
实施例二
本实例提供一种存储空间优化装置,用于优化应用程序占用的本地存储空间。其中,该装置包括文件存储模块11,如图6所示,文件存储模块11包括:
存储表生存单元111,用于生成文件存储表以存储应用程序在本地存储的各文件的存储信息,其中,存储信息包括本地存储地址、存储次数、唯一标识信息和存储时间;
初始化单元112,用于设定应用程序对应的本地存储上限参数MaxAmout并对MaxAmou赋初始值,以及设定应用程序对应的文件定时清理时间Tcleaning并对Tcleaning赋初始值;
存储指令接收判断单元113,用于判断是否接收到来自应用程序的存储指令,该存储指令包含待存储文件;
唯一标识信息获取单元114,用于获取待存储文件的唯一标识信息;
唯一标识信息查找单元115,用于查找文件存储表中是否存在待存储文件的唯一标识信息;
第一本地存储地址查找单元116,用于在唯一标识信息查找模块的查找结果为是时,查找文件存储表中是否存在待存储文件对应的本地存储地址;
存储单元117,用于在第一本地存储地址查找模块的查找结果为是时,将待存储文件对应的存储次数加1、存储时间设为当前时间;还用于在第一本地存储地址查找模块的查找结果为否时,存储待存储文件,并将待存储文件对应的存储次数设为1,且将存储时间设为当前时间;还用于在唯一标识信息查找模块的查找结果为否时,存储待存储文件,并在文件存储表中增加待存储文件的相应存储信息,其中,待存储文件对应的存储次数设为1、存储时间设为当前时间。
在本实施例中,存储空间优化装置还包括第一自动清理模块12,如图7所示,第一自动清理模块12包括:
第一超容量判断单元121,用于在接收到存储指令后,获取待存储文件的大小fileAmout以及应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断此时fileAmout与LocalAmout的当前值之和是否大于MaxAmout的当前值;
第一删除单元122,用于在第一超容量判断单元的判断结果为是时,删除当前应用程序在本地存储的所有文件中存储时间与当前时间的时间差大于Tcleaning的第一超时文件,同时在文件存储表中,将删除的第一超时文件对应的本地存储地址删除;
第二超容量判断单元123,用于在第一删除单元执行相应操作后,再次获取应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断此时fileAmout与LocalAmout的当前值之和是否仍大于MaxAmout的当前值;
第一存储上限参数更新单元124,用于在第二超容量判断单元的判断结果为是时,根据公式MaxAmout=LocalAmout的当前值+fileAmout+D更新MaxAmout的值,其中,D为预设的预留空间大小。
在本实施例中,存储空间优化装置还包括第二自动清理模块13,如图8所示,第二自动清理模块13包括:
第二删除单元131,用于在应用程序启动或退入后台运行或退出时,删除应用程序在本地存储的所有文件中存储时间与当前时间的时间差大于Tcleaning的文件,同时在文件存储表中,将删除的文件对应的本地存储地址删除;
存储上限参数判断单元132,用于判断MaxAmout的当前值是否大于MaxAmout的初始值;
比较单元133,用于获取应用程序当前在本地存储的所有文件的总大小LocalAmout,并比较LocalAmout的当前值与MaxAmout的初始值的大小;
第二存储上限参数更新单元134,用于在比较单元判定LocalAmout的当前值小于MaxAmout的初始值时,将MaxAmout的值设为MaxAmout的初始值;
第三存储上限参数更新单元135,用于在比较单元判定LocalAmout的当前值大于或等于MaxAmout的初始值时,将MaxAmout的值设为LocalAmout的当前值。
在本实施例中,存储空间优化装置还包括文件删除模块14,如图9所示,文件删除模块14包括:
删除指令接收判断单元141,用于判断是否接收到来自应用程序的删除指令,删除指令包含待删除文件;
存储次数递减单元142,用于在删除指令接收判断单元的判断结果为是时,在文件存储表中,将待删除文件对应的存储次数减1;
存储次数判断单元143,用于判断存储次数递减单元在将待删除文件对应的存储次数减1后,待删除文件对应的存储次数是否为0;
第二本地存储地址查找单元144,用于在存储次数判断单元的判断结果为是时,在文件存储表中,查找待删除文件对应的本地存储地址是否为空;
第三删除单元145,用于在第二本地存储地址查找单元的查找结果为是时,在文件存储表中,删除待删除文件对应的存储信息;
第四删除单元146,用于在第二本地存储地址查找单元的查找结果为否时,在本地删除待删除文件,同时在文件存储表中删除待删除文件的存储信息。
在本实施例中,存储空间优化装置还包括文件清空模块15,如图10所示,文件清空模块15包括:
清空指令接收判断单元151,用于判断是否接收到清空应用程序在本地存储的所有文件的清空指令;
清空单元152,用于在清空指令接收判断单元的判断结果为是时,删除应用程序在本地存储的所有文件,并删除文件存储表中所有文件对应的存储信息。
实施例三
本发明还提供一种计算机设备,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备20至少包括但不限于:可通过系统总线相互通信连接的存储器21、处理器22,如图11所示。需要指出的是,图11仅示出了具有组件21-22的计算机设备20,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器21(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备20的内部存储单元,例如该计算机设备20的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备20的外部存储设备,例如该计算机设备20上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器21还可以既包括计算机设备20的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备20的操作系统和各类应用软件,例如实施例二的存储空间优化装置10的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器22在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备20的总体操作。本实施例中,处理器22用于运行存储器21中存储的程序代码或者处理数据,例如运行存储空间优化装置10,以实现实施例一的存储空间优化方法。
实施例四
本发明还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储存储空间优化装置10,被处理器执行时实现实施例一的存储空间优化方法。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种存储空间优化方法,用于优化应用程序占用的本地存储空间,其特征在于,该方法包括在所述应用程序处于前台运行状态时,执行以下文件存储步骤:
S11、生成文件存储表以存储所述应用程序在本地存储的各文件的存储信息,所述存储信息包括本地存储地址、存储次数、唯一标识信息和存储时间;
S12、判断是否接收到来自所述应用程序的存储指令,若是,则执行步骤S13,其中所述存储指令包含待存储文件;
S13、获取所述待存储文件的唯一标识信息,并查找所述文件存储表中是否存在所述待存储文件的唯一标识信息,若是,则执行步骤S14,否则执行步骤S15;
S14、查找所述文件存储表中是否存在所述待存储文件对应的本地存储地址,若是,则在所述文件存储表中,将所述待存储文件对应的存储次数加1,且将存储时间设为当前时间,否则,存储所述待存储文件,并在所述文件存储表中,将所述待存储文件对应的存储次数设为1、存储时间设为当前时间;
S15、存储所述待存储文件,并在所述文件存储表中增加所述待存储文件的相应所述存储信息,其中,所述待存储文件对应的存储次数设为1、存储时间设为当前时间;
所述步骤S11还包括:设定所述应用程序对应的本地存储上限参数MaxAmout并对MaxAmou赋初始值,以及设定所述应用程序对应的文件定时清理时间Tcleaning并对Tcleaning赋初始值;
所述存储空间优化方法还包括在执行所述步骤S13之前,执行以下第一自动清理步骤:
S21、获取所述待存储文件的大小fileAmout以及所述应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断此时fileAmout与LocalAmout的当前值之和是否大于MaxAmout的当前值,若是,执行步骤S22,否则,执行步骤S13;
S22、删除当前所述应用程序在本地存储的所有文件中存储时间与当前时间的时间差大于Tcleaning的第一超时文件,同时在所述文件存储表中,将删除的第一超时文件对应的本地存储地址删除;
S23、再次获取所述应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断此时fileAmout与LocalAmout的当前值之和是否仍大于MaxAmout的当前值,若是执行步骤S24,否则执行步骤S13;
S24、根据公式MaxAmout=LocalAmout的当前值+fileAmout+D更新MaxAmout的值,而后执行步骤S13,其中,D为预设的预留空间大小。
2.根据权利要求1所述的存储空间优化方法,其特征在于,所述存储空间优化方法还包括在所述应用程序启动或退入后台运行或退出时,执行以下第二自动清理步骤:
S31、删除当前所述应用程序在本地存储的所有文件中存储时间与当前时间的时间差大于Tcleaning的第二超时文件,同时在所述文件存储表中,将删除的第二超时文件对应的本地存储地址删除。
3.根据权利要求2所述的存储空间优化方法,其特征在于,所述第二自动清理步骤还包括:在执行所述步骤S31之后,继续执行以下步骤:
S32、判断MaxAmout的当前值是否大于MaxAmout的初始值,若是,则执行步骤S33;
S33、获取所述应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断LocalAmout的当前值是否小于MaxAmout的初始值,若是,则执行步骤S34,否则执行步骤35;
S34、将MaxAmout的值设为MaxAmout的初始值;
S35、将MaxAmout的值设为LocalAmout的当前值。
4.根据权利要求1所述的存储空间优化方法,其特征在于,所述存储空间优化方法还包括在所述应用程序处于前台运行状态时,执行以下文件删除步骤:
S41、判断是否接收到来自所述应用程序的删除指令,若是,则执行步骤S42,其中所述删除指令包含待删除文件;
S42、在所述文件存储表中,将所述待删除文件对应的存储次数减1,而后判断所述待删除文件对应的存储次数是否为0,若是,则判断所述待删除文件对应的本地存储地址是否为空,若是,执行步骤S43,否则执行步骤44;
S43、在所述文件存储表中,删除所述待删除文件对应的所述存储信息;
S44、在本地删除所述待删除文件,同时在所述文件存储表中删除所述待删除文件的所述存储信息。
5.根据权利要求1所述的存储空间优化方法,其特征在于,所述存储空间优化方法还包括在所述应用程序处于前台运行状态时,执行以下文件清空步骤:
S51、判断是否接收到清空所述应用程序在本地存储的所有文件的清空指令,若是,执行步骤S52;
S52、删除所述应用程序在本地存储的所有文件,并删除所述文件存储表中所有文件对应的存储信息。
6.一种存储空间优化装置,用于优化应用程序占用的本地存储空间,其特征在于,该装置包括文件存储模块,所述文件存储模块包括:
存储表生存单元,用于生成文件存储表以存储所述应用程序在本地存储的各文件的存储信息,所述存储信息包括本地存储地址、存储次数、唯一标识信息和存储时间;
存储指令接收判断单元,用于判断是否接收到来自所述应用程序的存储指令,所述存储指令包含待存储文件;
唯一标识信息获取单元,用于获取所述待存储文件的唯一标识信息;
唯一标识信息查找单元,用于查找所述文件存储表中是否存在所述待存储文件的唯一标识信息;
第一本地存储地址查找单元,用于在所述唯一标识信息查找单元的查找结果为是时,查找所述文件存储表中是否存在所述待存储文件对应的本地存储地址;
存储单元,用于在所述第一本地存储地址查找单元的查找结果为是时,将所述待存储文件对应的存储次数加1,且将存储时间设为当前时间;还用于在所述第一本地存储地址查找单元的查找结果为否时,存储所述待存储文件,并将所述待存储文件对应的存储次数设为1、存储时间设为当前时间;还用于在所述唯一标识信息查找单元的查找结果为否时,存储所述待存储文件,并在所述文件存储表中增加所述待存储文件的相应所述存储信息,其中,所述待存储文件对应的存储次数设为1、存储时间设为当前时间;
所述文件存储模块还包括:初始化单元,用于设定所述应用程序对应的本地存储上限参数MaxAmout并对MaxAmou赋初始值,以及设定所述应用程序对应的文件定时清理时间Tcleaning并对Tcleaning赋初始值;
所述存储空间优化装置还包括第一自动清理模块,所述第一自动清理模块包括:
第一超容量判断单元,用于在接收到所述存储指令后,获取所述待存储文件的大小fileAmout以及所述应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断此时fileAmout与LocalAmout的当前值之和是否大于MaxAmout的当前值;
第一删除单元,用于在所述第一超容量判断单元的判断结果为是时,删除当前所述应用程序在本地存储的所有文件中存储时间与当前时间的时间差大于Tcleaning的第一超时文件,同时在所述文件存储表中,将删除的第一超时文件对应的本地存储地址删除;
第二超容量判断单元,用于在所述第一删除单元执行相应操作后,再次获取所述应用程序当前在本地存储的所有文件的总大小LocalAmout,并判断此时fileAmout与LocalAmout的当前值之和是否仍大于MaxAmout的当前值;
第一存储上限参数更新单元,用于在所述第二超容量判断单元的判断结果为是时,根据公式MaxAmout=LocalAmout的当前值+fileAmout+D更新MaxAmout的值,其中,D为预设的预留空间大小。
7.一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5任一项所述方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5任一项所述方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910008236.2A CN109857548B (zh) | 2019-01-04 | 2019-01-04 | 存储空间优化方法、装置、计算机设备及存储介质 |
PCT/CN2019/118353 WO2020140634A1 (zh) | 2019-01-04 | 2019-11-14 | 存储空间优化方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910008236.2A CN109857548B (zh) | 2019-01-04 | 2019-01-04 | 存储空间优化方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109857548A CN109857548A (zh) | 2019-06-07 |
CN109857548B true CN109857548B (zh) | 2023-08-22 |
Family
ID=66893965
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910008236.2A Active CN109857548B (zh) | 2019-01-04 | 2019-01-04 | 存储空间优化方法、装置、计算机设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109857548B (zh) |
WO (1) | WO2020140634A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109857548B (zh) * | 2019-01-04 | 2023-08-22 | 平安科技(深圳)有限公司 | 存储空间优化方法、装置、计算机设备及存储介质 |
EP3757689B1 (en) * | 2019-06-24 | 2023-04-12 | ABB Schweiz AG | Updating features in an automation device |
CN111026728A (zh) * | 2019-11-19 | 2020-04-17 | 山东中创软件商用中间件股份有限公司 | 一种日志数据处理方法及相关装置 |
CN111083222B (zh) * | 2019-12-13 | 2022-11-18 | 中富通集团股份有限公司 | 数据上传方法及终端 |
CN112395463B (zh) * | 2020-11-16 | 2024-02-23 | 深信服科技股份有限公司 | 数据的存储方法、装置、设备以及计算机可读存储介质 |
CN112511612A (zh) * | 2020-11-19 | 2021-03-16 | 中国联合网络通信集团有限公司 | 云存储数据存储方法、装置、系统、设备及存储介质 |
CN113312561B (zh) * | 2020-11-24 | 2023-11-14 | 芜湖达成储运有限公司 | 物料存储方法及系统 |
CN112463079B (zh) * | 2020-12-17 | 2023-12-22 | 北京浪潮数据技术有限公司 | 一种数据存储控制方法、装置、设备及可读存储介质 |
CN113760876A (zh) * | 2021-02-08 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种数据过滤方法和装置 |
CN113051223A (zh) * | 2021-03-30 | 2021-06-29 | 联想(北京)有限公司 | 一种数据处理方法及装置 |
CN113590532A (zh) * | 2021-07-30 | 2021-11-02 | 维沃移动通信(杭州)有限公司 | 文件处理方法、装置、电子设备和可读存储介质 |
CN115185615B (zh) * | 2022-09-09 | 2022-12-02 | 湖南三湘银行股份有限公司 | 基于内存空间优化的插件程序调用方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103559139A (zh) * | 2013-10-23 | 2014-02-05 | 华为技术有限公司 | 一种数据存储方法及装置 |
CN105787012A (zh) * | 2016-02-23 | 2016-07-20 | 深圳市瑞驰信息技术有限公司 | 一种提高存储系统处理小文件的方法以及存储系统 |
CN106101271A (zh) * | 2016-08-08 | 2016-11-09 | 北京小米移动软件有限公司 | 优化存储空间的方法及装置 |
CN107577423A (zh) * | 2017-08-15 | 2018-01-12 | 上海斐讯数据通信技术有限公司 | 一种优化存储空间的方法及系统 |
CN107678978A (zh) * | 2017-10-12 | 2018-02-09 | 深圳辉烨通讯技术有限公司 | 一种智能终端的存储空间处理方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009157452A (ja) * | 2007-12-25 | 2009-07-16 | Hitachi Ltd | ストレージ管理方法、そのプログラム及びシステム |
CN101908073B (zh) * | 2010-08-13 | 2012-07-11 | 清华大学 | 一种文件系统中实时删除重复数据的方法 |
CN102629247B (zh) * | 2011-12-31 | 2014-09-17 | 华为数字技术(成都)有限公司 | 一种数据处理方法、装置和系统 |
CN108063818B (zh) * | 2017-12-18 | 2021-05-14 | 深圳市中科明望通信软件有限公司 | 数据下载方法、装置、终端和计算机可读存储介质 |
CN109857548B (zh) * | 2019-01-04 | 2023-08-22 | 平安科技(深圳)有限公司 | 存储空间优化方法、装置、计算机设备及存储介质 |
-
2019
- 2019-01-04 CN CN201910008236.2A patent/CN109857548B/zh active Active
- 2019-11-14 WO PCT/CN2019/118353 patent/WO2020140634A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103559139A (zh) * | 2013-10-23 | 2014-02-05 | 华为技术有限公司 | 一种数据存储方法及装置 |
CN105787012A (zh) * | 2016-02-23 | 2016-07-20 | 深圳市瑞驰信息技术有限公司 | 一种提高存储系统处理小文件的方法以及存储系统 |
CN106101271A (zh) * | 2016-08-08 | 2016-11-09 | 北京小米移动软件有限公司 | 优化存储空间的方法及装置 |
CN107577423A (zh) * | 2017-08-15 | 2018-01-12 | 上海斐讯数据通信技术有限公司 | 一种优化存储空间的方法及系统 |
CN107678978A (zh) * | 2017-10-12 | 2018-02-09 | 深圳辉烨通讯技术有限公司 | 一种智能终端的存储空间处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2020140634A1 (zh) | 2020-07-09 |
CN109857548A (zh) | 2019-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109857548B (zh) | 存储空间优化方法、装置、计算机设备及存储介质 | |
KR100915564B1 (ko) | 실행하는 동안 애플리케이션을 업그레이드하기 위한 방법,소프트웨어 및 장치 | |
CN108683516B (zh) | 一种应用实例的升级方法、装置和系统 | |
EP2998861B1 (en) | Implementing and deleting method and device for intelligent terminal multi-operation system | |
CN105721941A (zh) | 云电视的空中下载升级控制方法和装置 | |
CN111683114A (zh) | 一种设备程序的升级方法、装置、终端设备和存储介质 | |
CN109117153B (zh) | 应用程序的处理方法、装置、终端和存储介质 | |
US20220188239A1 (en) | Memory cleaning method, intelligent terminal and readable storage medium | |
US20150089486A1 (en) | Method of Firmware Upgrade | |
CN111625264B (zh) | 一种多级管理系统的升级方法、装置、设备及介质 | |
CN113626054A (zh) | 一种业务服务更新方法及装置 | |
CN112286559A (zh) | 一种车载智能终端的升级方法及装置 | |
CN110555009B (zh) | 一种网络文件系统nfs服务的处理方法及装置 | |
CN112256295A (zh) | 应用程序的更新方法、装置、设备和存储介质 | |
CN116760815A (zh) | 固件版本升级方法及装置 | |
CN107783837B (zh) | 一种进行存储扩展的方法、装置及电子设备 | |
CN112114864B (zh) | cocoapods代码拉取优化方法及系统 | |
CN115268958A (zh) | 一种基于Android系统的分布式静默升级方法及装置 | |
CN104252367B (zh) | 一种智能终端中异步加载图片的方法和系统 | |
CN113805957A (zh) | 边缘端程序动态加载方法及装置 | |
CN113504879A (zh) | 数据存储的方法及智能家电 | |
CN113946275A (zh) | 一种缓存管理方法及装置、存储介质 | |
CN117295021B (zh) | 一种渠道自适应部署方法、系统、设备和介质 | |
CN111209051A (zh) | 一种基于国产操作系统的优化加速方法及装置 | |
CN108196852A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |