本发明涉及通信技术领域,特别涉及一种优化存储空间的方法及装置。
背景技术:
随着终端技术的飞速发展,各类终端应用的功能和效果也是日益强大和逼真,终端应用的安装包文件的大小也随着日益增加。通常用户使用的终端要内置相当数量的终端应用,由于目前内置终端应用的方式增多,安装包文件作为一个文件复制到对应的系统目录下,再添加对应的开关来控制器是否内置到系统中,但是由于后续的需求变更,直接把宏开关关闭使终端应用不内置到系统中,但是安装包文件还是会内置到系统中;再由于目前多个项目采用共基线的开发方式,其他项目内置的多余的安装包到系统中,导致本身项目中也会有同样的多余的安装包内置到系统中,因此产生很多多余的安装包文件。而这些安装包文件占用了大量的存储空间,导致终端留给系统和用户使用的空间大大减少,影响了终端系统的运行速度和性能。
目前清除系统中多余的安装包文件的方法多为通过扫描和提取安装包文件的属性信息,判断是否为多余的安装包文件并进行清除。而直接通过属性信息判断安装包文件是否多余并不准确,因此会导致误删或者不完全删除的情况。
技术实现要素:
本发明主要解决的技术问题是提供一种优化存储空间的方法及装置,能够有效的确保终端只内置系统安装运行的软件,增加内存系统和用户的可用空间,提高终端系统的运行速度和性能。
为解决上述技术问题,本发明采用的一个技术方案是提供一种优化存储空间的方法,包括:
获取终端所有的安装软件信息列表,;
扫描系统目录下所有的安装包文件;
判断所述安装包文件的信息是否与在所述安装软件信息列表中的至少一个安装软件信息匹配,若是,则保留所述安装包文件;若不是,则删除所述安装包文件。
其中,所述获取终端所有的安装软件信息列表,包括:
从所有的安装软件信息列表中读取每个已安装的应用安装包文件的路径。
其中,所述扫描系统目录下所有的安装包文件,包括:
获取系统目录下每个安装包文件的路径。
其中,所述判断安装包文件的信息是否在安装软件列表中,包括:
如果所述系统目录下的安装包文件的路径与所述已安装的应用安装包文件的路径相同,则所述系统目录下的安装包文件在安装软件列表中;否则所述系统目录下的安装包文件不在安装软件列表中。
其中,删除所述安装包文件的方法包括:
若所述系统目录下的安装包文件不在安装软件列表中,直接删除所述安装包文件。
其中,删除所述安装包文件的方法包括:
若所述系统目录下的安装包文件不在安装软件列表中,向用户发送删除所述安装包文件的提示信息,询问用户是否删除所述安装包文件;
用户确认删除所述安装包文件后,删除所述安装包文件。
为解决上述技术问题,本发明采用的另一个技术方案是提供一种优化存储空间的装置,包括:
获取模块,用于获取终端所有的安装软件信息列表;
扫描模块,用于扫描系统目录下所有的安装包文件;
判断模块,用于判断所述安装包文件的信息是否在所述安装软件列表中;
处理模块,用于根据所述判断模块的判断结果对所述安装包文件进行处理。
其中,所述获取模块还用于从所有的安装软件信息列表中读取每个已安装的应用安装包文件的路径。
其中,所述扫描模块还用于获取系统目录下每个安装包文件的路径。
其中,所述判断模块具体用于对比系统目录下的安装包文件的路径与已安装的应用安装包文件的路径是否相同,若相同,则所述系统目录下的安装包文件在安装软件列表中;否则所述系统目录下的安装包文件不在安装软件列表中。
本发明通过将系统目录下的安装包文件信息与安装软件信息进行对比,判断安装包文件是否为多余文件并进行删除,有效的保证终端只内置系统安装运行的软件,减少无效安装包文件占用的存储空间,增加内存系统和用户的可用空间,从而保证系统快速、稳定地运行,提高终端系统的使用性能。
附图说明
图1是本发明优化存储空间的方法一实施例的流程图;
图2是本发明优化存储空间的方法另一实施例的流程图;
图3是本发明优化存储空间的装置实施例的结构示意图;
图4是本发明优化存储空间的装置实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,本发明优化存储空间的方法一实施例包括:
S1:获取终端所有的安装软件信息列表,
终端可以是手机、平板电脑等;软件可以是终端应用,例如微信、邮箱或地图等。
软件信息可以是应用安装包文件的路径、应用的大小和安装时间等。
S2:扫描系统目录下所有的安装包文件;
本实施例可适用的系统可以是IOS系统、Android系统等。
系统目录下可以包括已安装的应用的安装包文件、未安装的应用的安装包文件、系统的配置文件或系统的平台框架等文件。
S3:判断安装包文件的信息是否与安装软件信息列表中的至少一个安装软件信息匹配,S4:若是,则保留安装包文件;S5:若不是,则删除安装包文件。
安装包文件的信息可以使安装包文件的路径、应用的名称或类型等。
本发明实施例通过将系统目录下的安装包文件信息与安装软件信息进行对比,判断安装包文件是否为多余文件并进行删除,有效的保证终端只内置系统安装运行的软件,减少无效安装包文件占用的存储空间,增加内存系统和用户的可用空间,从而保证系统快速、稳定地运行,提高终端系统的使用性能。
参见图2,本发明优化存储空间的方法另一实施例包括:
S1:获取终端所有的安装软件信息列表,
在本实施例中,以Android系统的手机为例进行说明。
将手机开机后,首先获取手机上所有的安装软件信息列表,系统中安装软件信息列表的名称为list_install_apps,获取的方法如下:
List<ApplicationInfo>list_install_apps=context.getPackageManager().g etInstalledApplications(PackageManager.GET_UNINSTALLED_PACKAGES)。
S11:从所有的安装软件信息列表中读取每个已安装的应用安装包文件的路径;
在所有的安装软件中,每个软件都对应有其应用安装包文件,系统中已安装的应用安装包文件的路径为install_app_sourceDir[i],读取已安装的应用安装包文件的路径的方法如下:
for(inti=0;i<apps.size();i++){
install_app_sourceDir[i]=list_install_apps.get(i).sourceDir);
}。
S2:扫描系统目录下所有的安装包文件,
S21:获取系统目录下每个安装包文件的路径;
系统目录包含所有已安装的应用的安装包文件和未安装的应用的安装包文件,系统目录下安装包文件的路径名称为apk_sorceDir[i],扫描并获取系统目录下每个安装包文件的路径的方法如下:
apk_sorceDir[i]=apk_file.getAbsolutePath()。
S31:对比系统目录下的安装包文件的路径与已安装的应用安装包文件的路径是否相同;
S4:若相同,则保留安装包文件;
如果系统目录下的安装包文件路径名apk_sorceDir[i]包含在手机的所有安装应用的列表list_install_apps中,也就是系统目录下的安装包文件路径名apk_sorceDir[i]与已安装的应用的安装包文件路径名install_app_sourceDir[i]相同,则表示此系统目录下的安装包文件就是已经安装的应用的安装包文件,将此安装包文件保留。
S51:若不相同,则直接删除安装包文件;
S52:若不相同,则向用户发送删除安装包文件的提示信息,询问用户是否删除安装包文件;
S53:用户确认删除安装包文件后,删除安装包文件。
如果系统目录下的安装包文件路径名apk_sorceDir[i]不包含在手机的所有安装应用的列表list_install_apps中,也就是系统目录下的安装包文件路径名apk_sorceDir[i]与已安装的应用的安装包文件路径名install_app_sourceDir[i]没有相同的,则表示此系统目录下的安装包文件不是已经安装的应用中的任何一个,手机没有使用此安装包文件,则需要将此安装包文件删除。具体的,可以直接删除多余的安装包文件,也可以通过提示信息的方式告知用户,待用户确认后再删除多余的安装包文件。
需要说明的是,在本实施例中是通过安装包文件的路径唯一确定一个安装包文件,进而判断系统目录下的安装包是否为终端中已安装的应用的安装包文件。在其他实施例中,还可以通过安装包文件的名称、类型、文件大小等属性或者多个属性的结合唯一确定一个安装包文件,进而判断系统目录下的安装包是否为终端中已安装的应用的安装包文件。
本发明实施例通过将已安装的应用安装包文件的路径与系统目录下每个安装包文件的路径进行对比,准确判断安装包文件是否为多余文件并进行删除,有效的保证终端只内置系统安装运行的软件,减少无效安装包文件占用的存储空间,增加内存系统和用户的可用空间,从而保证系统快速、稳定地运行,提高终端系统的使用性能。
参见图3,本发明优化存储空间的装置实施例包括:
获取模块10,用于获取终端所有的安装软件信息列表;
扫描模块20,用于扫描系统目录下所有的安装包文件;
判断模块30,用于判断安装包文件的信息是否在安装软件列表中;
处理模块40,用于根据判断模块30的判断结果对安装包文件进行处理。
参见图4,本实施例中的终端为手机,设有处理器100。处理器100包括获取模块10、扫描模块20、判断模块30和处理模块40,用于判断系统目录下的安装包文件是否为多余文件并删除多余的安装包文件。
具体的,优化存储空间的过程参见上述优化存储空间的方法实施例,在此不再赘述。
本发明实施例通过将系统目录下的安装包文件信息与安装软件信息进行对比,判断安装包文件是否为多余文件并进行删除,有效的保证终端只内置系统安装运行的软件,减少无效安装包文件占用的存储空间,增加内存系统和用户的可用空间,从而保证系统快速、稳定地运行,提高终端系统的使用性能。
以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。