移动终端中存储空间的扫描方法和装置制造方法
【专利摘要】本发明实施例提供了一种移动终端中存储空间的扫描方法和装置,所述方法包括:对存储空间进行扫描时,读取当前待扫描的目录的当前时间戳;将读取的时间戳与扫描记录中所述目录的时间戳进行比较;若判断两者一致,则在确定所述目录为底层目录后,跳过对所述目录的扫描,并将上次扫描过程中得到的所述目录的信息,作为本次扫描过程中得到的所述目录的信息进行记录。本发明的技术方案中,移动终端中的扫描装置在扫描存储空间的过程中,可以跳过对本次、以及上次扫描过程中时间戳保持不变的底层目录的扫描,从而节省扫描时间,提高扫描的效率和响应时间,提高用户的体验。
【专利说明】移动终端中存储空间的扫描方法和装置
【技术领域】
[0001]本发明涉及移动终端技术,具体而言,本发明涉及移动终端中存储空间的扫描方法和装置。
【背景技术】
[0002]随着通信技术的发展,移动终端已经得到广泛应用。移动终端中通常安装有杀毒类、清理类或者多媒体播放类程序,这些程序通常会对移动终端的存储空间的文件结构进行扫描,以扫描出具有安全隐患的、可清理的或者可播放的文件。
[0003]目前,移动终端采用的扫描方法,通常是对本移动终端的存储空间中所有的目录和文件进行遍历性地扫描。
[0004]然而,移动终端中的存储空间越来越大,存储空间中的目录以及文件越来越多。在现有的扫描方法对扫描单个文件的速度未有提升的情况下,采用现有的扫描方法对存储空间中数量巨大的目录和文件进行扫描,很容易导致扫描速度缓慢,造成移动终端需要经过较长的响应时间才能得到扫描结果展示给用户,降低了用户的体验。
[0005]因此,有必要提供一种移动终端中存储空间的扫描方法和装置,以提高对存储空间的扫描速度,提高移动终端获取扫描结果的响应速度,提高用户的体验。
【发明内容】
[0006]本发明的目的旨在至少解决上述技术缺陷之一,特别是提高对存储空间的扫描速度,提高移动终端获取扫描结果的响应速度。
[0007]本发明提供了一种移动终端中存储空间的扫描方法,包括:
[0008]对存储空间进行扫描时,读取当前待扫描的目录的当前时间戳;
[0009]将读取的时间戳与扫描记录中所述目录的时间戳进行比较;
[0010]若判断两者一致,则在确定所述目录为底层目录后,跳过对所述目录的扫描,并将上次扫描过程中得到的所述目录的信息,作为本次扫描过程中得到的所述目录的信息进行记录。
[0011]进一步,在所述判断两者一致后,还包括:
[0012]若确定所述目录不是底层目录,则:
[0013]继续获取所述目录下各子目录的当前时间戳;
[0014]对于每个子目录,将该子目录的当前时间戳与所述扫描记录中该子目录的时间戳进行比较;根据比较结果,决定是否跳过对该子目录的扫描。
[0015]进一步,所述移动终端中存储空间的扫描方法,还包括:
[0016]若所述扫描记录中没有所述目录的时间戳,则:
[0017]读取所述目录的当前时间戳存入到扫描记录中;并
[0018]对所述目录进行扫描,将本次扫描得到的所述目录的信息进行记录。
[0019]进一步,所述移动终端中存储空间的扫描方法,还包括:
[0020]若查找出的时间戳与所述目录的当前时间戳不同,则:
[0021]将所述目录的当前时间戳替换掉所述扫描记录中记载的所述目录的时间戳;并
[0022]对所述目录进行扫描,将本次扫描得到的所述目录的信息进行记录。
[0023]进一步,在所述对存储空间进行扫描时,还包括:
[0024]确定所述目录下的文件的数量;以及
[0025]所述读取当前待扫描的目录的当前时间戳,具体为:
[0026]在确定当前待扫描的目录下的文件的数量超过设定阈值时,读取该目录的当前时间戳。
[0027]进一步,在所述确定所述目录不是底层目录后,还包括:
[0028]确定所述目录的层级;以及
[0029]所述继续获取所述目录下各子目录的当前时间戳,具体为:
[0030]若所述目录的层级小于预设的层级数,则继续获取所述目录下各子目录的当前时间戳。
[0031]较佳地,所述存储空间具体为非易失性存储器的存储空间、或者所述移动终端的内存。
[0032]较佳地,所述扫描记录中,对应记载的目录还记录有该目录的路径信息和扫描策略。
[0033]进一步,所述对存储空间进行扫描时,还包括:
[0034]获取当前待扫描目录的路径信息;
[0035]根据该目录的路径信息在所述扫描记录中查找相应的扫描策略;
[0036]根据查找到的扫描策略确定出该目录的扫描结果。
[0037]进一步,在所述对存储空间进行扫描时,还包括:
[0038]接收到扫描指令后,同时进行内存、非易失性存储空间的清理数据扫描;
[0039]周期性地根据内存的清理数据扫描的进度,以及非易失性存储空间的清理数据扫描的进度,计算出总体进度;
[0040]在显示界面上,根据所述总体进度进行进度表示器的进度显示,并根据所述非易失性存储空间的清理数据扫描过程中,当前已扫描的清理数据的大小,显示所述进度表示器的颜色。
[0041]进一步,所述移动终端中存储空间的扫描方法,还包括:在所述内存、非易失性存储空间的清理数据扫描完成后,在所述显示界面显示“一键清理”按键,以及“清理数据详情查看”按键。
[0042]进一步,所述移动终端中存储空间的扫描方法,还包括:
[0043]在接收到“清理数据详情查看”按键的点击事件后,在所述显示界面中显示如下至少一种类别的数据:
[0044]内存数据、缓存数据、系统盘垃圾数据、广告数据、安装包数据、卸载残留数据、大文件数据;以及,所述方法还包括:
[0045]对应每种类别的数据,还显示有该类别的数据的建议清理的清理数据的大小,以及“展开”按键。
[0046]进一步,所述移动终端中存储空间的扫描方法,还包括:
[0047]在接收到一种类别的数据的“展开”按键的点击事件后,在所述显示界面显示该类别的数据下各子项的相关信息;
[0048]其中,所述子项的相关信息包括:所述子项的名称、占用大小、以及勾选状态。
[0049]较佳地,所述系统盘垃圾数据、以及广告数据下各子项的勾选状态均默认设置为已勾选。
[0050]进一步,所述移动终端中存储空间的扫描方法,还包括:
[0051]在接收到“一键清理”按键的点击事件后,对已勾选的子项的数据进行清除。
[0052]进一步,在所述对存储空间进行扫描时,还包括:
[0053]根据对第一悬浮窗操作所产生的调用指令,调用第二悬浮窗;
[0054]接收对所述第二悬浮窗操作所产生的清理指令;
[0055]根据所述清理指令,对文件进行清理。
[0056]较佳地,所述第一悬浮窗展示的内容为:
[0057]当前内存占用率;或
[0058]当前内存占用率和检测的需文件清理的清理提示。
[0059]较佳地,调用的第二悬浮窗的显示状态为以下任意一种:
[0060]当所述第一悬浮窗为内存占用率展示时,第二悬浮窗显示常规界面;
[0061]当所述第一悬浮窗为内存占用率和清理提示展示时,第二悬浮窗显示常规界面、且常规界面上增加清理提示区域。
[0062]较佳地,所述第二悬浮窗包括内存加速界面、清理界面及常用界面;
[0063]其中,所述内存加速界面包括初始子界面和完成子界面,初始子界面用于显示当前内存占用率,其上设有点击加速功能控件,该控件用于调用完成子界面;
[0064]所述清理界面包括扫描子界面、停止扫描子界面、清理子界面及已清理子界面,扫描子界面、停止扫描子界面、清理子界面上分别设有扫描功能控件、停止扫描功能控件、一键清理功能控件,扫描功能控件用于调用停止扫描子界面,停止扫描功能控件用于调用清理子界面,一键清理功能控件用于调用已清理子界面;
[0065]所述常用界面包括自启管理功能控件、卸载预装功能控件、隐私清理功能控件、游戏/视频加速功能控件、软件卸载功能控件及定时清理功能控件;
[0066]所述内存加速界面为第二悬浮窗的常规界面,所述清理提示区域为控件区域,且设有相应的提不文案。
[0067]本发明还提供了一种移动终端中存储空间的扫描装置,包括:
[0068]扫描模块,用于对存储空间进行扫描时,读取当前待扫描的目录的当前时间戳,并输出查找通知;若接收的比较结果为一致,则在确定所述目录为底层目录后,跳过对所述目录的扫描,并将上次扫描过程中得到的所述目录的信息,作为本次扫描过程中得到的所述目录的信息进行记录;
[0069]查找比对模块,用于接收到所述查找通知后,从扫描记录中查找出所述目录的时间戳,将查找出的时间戳与所述扫描模块读取的时间戳进行比较;并返回比较结果。
[0070]进一步,所述扫描模块还用于在所述接收的比较结果为一致后,若确定所述目录不是底层目录,继续获取所述目录下各子目录的当前时间戳,并针对每个子目录输出查找通知;之后,根据针对每个子目录返回的比较结果,决定是否跳过对相应子目录的扫描:对于每个子目录,在接收到该子目录返回的比较结果为一致后,若确定出该子目录为底层目录,则跳过对所述子目录的扫描,并将上次扫描过程中得到的所述子目录的信息,作为本次扫描过程中得到的所述子目录的信息进行记录。
[0071]进一步,所述查找比对模块还用于接收到所述查找通知后,若在所述扫描记录中没有查找到所述目录的时间戳,则将所述目录的当前时间戳存入到扫描记录中,并输出无记录通知;以及
[0072]所述扫描模块还用于在接收到所述无记录通知后,对所述目录进行扫描,将本次扫描得到的所述目录的信息进行记录。
[0073]进一步,所述查找比对模块还用于接收到所述查找通知后,若判断出查找出的时间戳与所述目录的当前时间戳不同,则将所述目录的当前时间戳替换掉所述扫描记录中记载的所述目录的时间戳,并输出不一致的比较结果;以及
[0074]所述扫描模块还用于接收到不一致的比较结果后,对所述目录进行扫描,将本次扫描得到的所述目录的信息进行记录。
[0075]较佳地,所述扫描模块具体用于对存储空间进行扫描时,确定当前待扫描的目录下的文件的数量,在该目录下的文件的数量超过设定阈值时,读取该目录的当前时间戳。
[0076]较佳地,所述扫描记录中,对应记载的目录还记录有该目录的路径信息和扫描策略。
[0077]进一步,所述扫描模块还用于对存储空间进行扫描时,获取当前待扫描目录的路径信息;并根据返回的扫描策略确定出该目录的扫描结果;以及
[0078]所述查找比对模块还用于接收到所述查找通知后,还根据所述扫描模块获取的目录的路径信息在所述扫描记录中查找相应的扫描策略向所述扫描模块发送。
[0079]本实施例的方案中,移动终端中的扫描装置在扫描存储空间的过程中,可以跳过对时间戳保持不变的底层目录的扫描,从而节省扫描时间,提高扫描的效率和响应时间,提闻用户的体验。
[0080]而且,本发明实施例的技术方案中,还可以跳过对各子目录都为底层目录、且各子目录时间戮都保持不变的目录的扫描,进一步节省扫描时间,提闻扫描的效率和响应时间。
[0081]进一步,本发明实施例的技术方案中,还可以无需扫描目录,根据目录中文件的数量和大小直接获得该目录的扫描结果;或者根据扫描策略跳过对该目录的扫描;从而进一步节省扫描时间,提高扫描的效率和响应时间。
[0082]本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
【专利附图】
【附图说明】
[0083]本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
[0084]图1为本发明实施例的移动终端中存储空间的扫描方法的流程示意图;
[0085]图2为本发明实施例的移动终端中存储空间的扫描装置的内部结构的框架示意图;
[0086]图3a为本发明实施例的存储空间的清理数据一键扫描方法的流程示意图;
[0087]图3b至图3e、图4a至图4d分别为本发明实施例的清理数据一键扫描方法中的显示界面的示意图;
[0088]图5、图6分别为本发明实施例的两种基于悬浮窗的文件清理方法的流程示意图;
[0089]图7、图8分别为本发明实施例的两种清理缓存文件的方法的流程示意图;
[0090]图9为本发明实施例的移动终端中存储的安装包的清理方法的流程示意图。
【具体实施方式】
[0091]下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
[0092]本【技术领域】技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
[0093]本【技术领域】技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
[0094]本【技术领域】技术人员可以理解,这里所使用的“终端”、“移动终端”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,进行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS (Personal Communicat1ns Service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA (Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS (Global Posit1ning System,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“移动终端”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“移动终端”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
[0095]本发明的发明人发现,很多移动终端中的目录的时间戳具有如下特性:当该目录中的任意文件发生改变时,该目录的时间戳随之改变;当目录中的子目录的时间戳发生改变时,该目录的时间戳不会改变。
[0096]因此,本发明的发明人考虑到,可以通过考察目录的时间戳来判断目录中的内容是否发生改变;如果判断出目录中的内容与上次扫描过程中的内容没有改变,就可以跳过对该目录的扫描,而直接使用该目录的上次扫描结果作为本次扫描过程中得到的该目录的扫描结果,从而节省扫描时间,提高扫描的效率和响应时间,提高用户的体验。
[0097]下面结合附图具体介绍本发明实施例的技术方案。
[0098]本发明实施例提供了一种移动终端的存储空间的扫描方法,该方法的流程示意图如图1所示,包括如下步骤:
[0099]SlOl:对存储空间进行扫描时,读取当前待扫描的目录的当前时间戳。
[0100]具体地,移动终端对本移动终端的存储空间进行扫描的过程中,对于当前待扫描的目录,读取该目录的当前时间戳。
[0101]其中,移动终端的存储空间可以具体为非易失性存储器的存储空间、或者移动终端中的内存。非易失性存储器具体包括:EEPROM(Electrically Erasable ProgrammableRead-Only Memory,电可擦可编程只读存储器)、闪存、SD (Secure Digital Memory,安全数字记忆体)卡、micro SD卡、记忆棒、微型硬盘和固态硬盘等。
[0102]较佳地,移动终端在对存储空间进行扫描时,对于当前待扫描的目录,确定该目录下的文件的数量;在确定出该目录下的文件的数量超过设定阈值(例如2000)时,读取该目录的当前时间戳。
[0103]S102:对于当前待扫描的目录,将读取的该目录的当前时间戳与扫描记录中所记载的该目录的时间戳进行比较,判断两者是否一致,若是,则执行步骤S103;否则,执行步骤 S106。
[0104]具体地,移动终端对于当前待扫描的目录,从扫描记录中查找到该目录的时间戳,将查找到的时间戳与步骤SlOl中读取的该目录的当前时间戳进行比较,判断两者是否一致,若是,则执行步骤S103 ;否则,执行步骤S106。
[0105]其中,扫描记录中记载的目录的时间戳,是移动终端在上次扫描过程中获取并对应该目录记录到扫描记录中的。
[0106]此外,移动终端对于当前待扫描的目录,若从扫描记录中没有查找到该目录的时间戳,则执行步骤S106。
[0107]S103:对于当前待扫描的目录,识别该目录是否为底层目录;若是,执行步骤S104 ;否则,执行步骤S105。
[0108]S104:对于识别为底层目录的目录,跳过对该目录的扫描,并将上次扫描过程中得到的该目录的信息,作为本次扫描过程中得到的该目录的信息进行记录。
[0109]具体地,移动终端对于识别为底层目录的目录,跳过对该目录的扫描,并将上次扫描过程中得到的该目录的信息,作为本次扫描过程中得到的该目录的信息进行记录。
[0110]目录的信息可以包括该目录的名称和路径;此外,目录的信息还可以包括:该目录的版本号、时间戳和所占用空间的大小,以及该目录中的文件的名称、版本号、时间戳和所占用空间的大小。
[0111]S105:对于识别为非底层目录的目录,根据该目录下子目录的时间戳,决定是否跳过对该目录下子目录的扫描。
[0112]具体地,移动终端对于识别为非底层目录的目录,继续获取该目录下各子目录的当前时间戳;对于每个子目录,将该子目录的当前时间戳与扫描记录中该子目录的时间戳进行比较;根据比较结果,决定是否跳过对该子目录的扫描具体包括:
[0113]移动终端若若判断出比较结果为一致,且该子目录为底层目录,则跳过对该子目录的扫描,并将上次扫描过程中得到的该子目录的信息,作为本次扫描过程中得到的该子目录的信息进行记录。
[0114]移动终端若判断出比较结果为不一致,则对该子目录进行扫描,将本次扫描得到的该子目录的信息进行记录。
[0115]移动终端若判断出比较结果为一致,而该子目录为非底层目录,则依据同样方法根据该子目录下的各目录的时间戳,决定是否跳过对该子目录下的各目录的扫描。
[0116]较佳地,移动终端对于识别为非底层目录的当前待扫描的目录,还可以确定该目录的层级,并根据该目录的层级决定是否继续获取该目录下各子目录的当前时间戳:若该目录的层级小于预设的层级数(例如10层),则继续获取该目录下各子目录的当前时间戳;否则,不继续获取该目录下各子目录的当前时间戳。
[0117]S106:对于时间戳不一致或者时间戳未记录的当前待扫描的目录,对该目录进行扫描,将本次扫描得到的该目录的信息进行记录。
[0118]具体地,移动终端对于当前待扫描的目录,若在步骤S102中判断出从扫描记录中查找出的该目录的时间戳与步骤SlOl中读取的该目录的当前时间戳不同,则在本步骤中,将该目录的当前时间戳替换掉扫描记录中记载的该目录的时间戳,并对该目录进行扫描,将本次扫描得到的该目录的信息进行记录。
[0119]或者,移动终端对于当前待扫描的目录,若在步骤S102中判断出从扫描记录中没有查找到该目录的时间戳,则在本步骤中,将步骤SlOl中读取的该目录的当前时间戳存入到扫描记录中,并对该目录进行扫描,将本次扫描得到的该目录的信息进行记录。
[0120]基于上述移动终端的存储空间的扫描方法,本发明实施例还提供了一种设置于移动终端中对存储空间进行扫描的扫描装置,其内部结构的框架示意图如图2所示,包括:扫描模块201和查找比对模块202。
[0121]扫描模块201用于对存储空间进行扫描时,读取当前待扫描的目录的当前时间戳;较佳地,扫描模块201对存储空间进行扫描时,确定当前待扫描的目录下的文件的数量,在该目录下的文件的数量超过设定阈值时,读取该目录的当前时间戳;并输出查找通知。
[0122]并且,扫描模块201用于若接收的比较结果为一致,则在确定该目录为底层目录后,跳过对该目录的扫描,并将上次扫描过程中得到的该目录的信息,作为本次扫描过程中得到的该目录的信息进行记录;较佳地,扫描模块201还在接收的比较结果为一致后,若确定该目录不是底层目录,继续获取该目录下各子目录的当前时间戳,并针对每个子目录输出查找通知;之后,根据针对每个子目录返回的比较结果,决定是否跳过对相应子目录的扫描:对于每个子目录,在接收到该子目录返回的比较结果为一致后,若确定出该子目录为底层目录,则跳过对该子目录的扫描,并将上次扫描过程中得到的该子目录的信息,作为本次扫描过程中得到的该子目录的信息进行记录。
[0123]查找比对模块202用于接收到扫描模块201输出的查找通知后,从扫描记录中查找出当前待扫描的目录的时间戳,将查找出的时间戳与扫描模块202读取的时间戳进行比较;并返回比较结果。
[0124]进一步,查找比对模块202还用于在接收到查找通知后,对于当前待扫描的目录,若在扫描记录中没有查找到该目录的时间戳,则将该目录的当前时间戳存入到扫描记录中,并输出无记录通知;或者,在接收到查找通知后,对于当前待扫描的目录,若判断出查找出的时间戳与该目录的当前时间戳不同,则将该目录的当前时间戳替换掉扫描记录中记载的该目录的时间戳,并输出不一致的比较结果。
[0125]扫描模块201还用于在接收到查找比对模块202输出的无记录通知、或者不一致的比较结果后,对当前待扫描的目录进行扫描,将本次扫描得到的该目录的信息进行记录。
[0126]更优地,本发明实施例的扫描记录中,对应记载的目录,还可以记录有该目录的路径信息、扫描策略;此外,扫描记录中对应记载的目录可可以记录有该目录的类型以及该目录中的文件的类型;基于此,本发明实施例还提供了一种加速存储空间的扫描方法:
[0127]移动终端在对存储空间进行扫描的过程中,获取当前待扫描的目录的路径信息;根据该目录的路径信息在扫描记录中查找相应的扫描策略;根据查找到的扫描策略确定出该目录的扫描结果。
[0128]其中,目录的扫描策略可以包括:解析总描述文件、文件大小平均值、跳过扫描等。
[0129]当在扫描记录中查找到与当前待扫描的目录的路径信息相对应的扫描策略为解析总描述文件时,可以根据总描述文件中记录的该目录中各文件的大小,计算出该目录的大小,作为该目录的扫描结果进行记录,从而不用在此次扫描过程对该目录进行扫描,加速了扫描速度。
[0130]当在扫描记录中查找到与当前待扫描的目录的路径信息相对应的扫描策略为文件大小平均值时,可以获取该目录下文件的总数后,计算出获取的总数与查找到的文件大小平均值的乘积,作为该目录的扫描结果进行记录,从而不用在此次扫描过程对该目录进行扫描,加速了扫描速度。
[0131]当在扫描记录中查找到与当前待扫描的目录的路径信息相对应的扫描策略为跳过扫描时,则跳过对该目录的扫描,并将上次扫描获得的该目录的扫描结果,作为该目录的扫描结果进行记录。
[0132]较佳地,扫描记录中、对应的扫描策略为跳过扫描的目录可以包括:系统目录、大小超设定上限的目录、或者存放安装包文件的目录等。安装包文件具体可以是扩展名为APK(AndroidPacKage,安卓安装包)的文件。
[0133]更优地,移动终端得到当前待扫描目录的扫描结果后,若确定该目录下的文件数量超过设定阈值,且各文件的大小的方差在设定范围内,则计算该目录的文件大小平均值,并将计算出的文件大小平均值作为该目录的扫描策略,对应该目录更新到扫描记录中。
[0134]基于上述加速存储空间的扫描方法,如图2所示的移动终端中存储空间的扫描装置还具有如下功能:
[0135]扫描模块201还用于对存储空间进行扫描时,从扫描记录中获取当前待扫描目录的路径信息;并根据返回的扫描策略确定出该目录的扫描结果。
[0136]查找比对模块202还用于接收到查找通知后,还根据扫描模块201获取的目录的路径信息,在扫描记录中查找相应的扫描策略向扫描模块201发送;其中,扫描记录中,对应记载的目录还记录有该目录的路径信息和扫描策略。
[0137]更优的,为了减少移动终端用户的操作,本发明还提供了一种存储空间的清理数据的一键扫描方法,如图3a所示,其流程具体可以包括如下步骤:
[0138]S301:在接收到扫描指令后,同时进行内存、非易失性存储空间的清理数据扫描。
[0139]具体地,在进行清理数据扫描之前,用户可以向移动终端发送扫描指令。例如,可以通过点击移动终端的显示屏幕中预先设定的清理数据扫描按键,或者打开预先安装的支持清理数据的一键扫描清理的软件,来触发扫描指令的发送。移动终端接收到用户发送的扫描指令后,同时进行内存、非易失性存储空间的清理数据扫描。
[0140]本步骤中,内存、非易失性存储空间的清理数据扫描具体可以由同一进程执行,也可以由两个进程分别执行。例如,内存的清理数据可以由预先设定的内存扫描进程执行;非易失性存储空间的清理数据扫描可以由非易失性存储空间扫描进程执行。实际应用中,内存、非易失性存储空间的清理数据扫描无论是由一个进程还是两个进程来执行,内存和非易失性存储空间是分开扫描的,内存会启动一个线程进行扫描;非易失性存储空间会根据移动终端的状态来分配线程。例如,在CPU多核的移动终端上,可以根据CPU和核数来分配扫描线程,最多分配4个线程进行非易失性存储空间的扫描。
[0141]实际应用中,在扫描清理数据的过程中,可以将当前扫描的目录的相关信息(比如,路径、包名等信息)与预先从云端服务器下载或本地存储的清理数据库中的目录的信息进行匹配,根据匹配出的目录所对应清理策略、以及所属类别等信息,识别出当前扫描的目录为清理数据,并可以进一步确定出该清理数据所属类别,以及用于清理该清理数据的清理策略。进一步地,云端服务器可以定期对本地的清理数据库进行更新升级,对清理数据库中记录的目录及对应的清理策略等进行及时更新。
[0142]其中,清理数据库中记录的清理策略可以包括如下几种:
[0143]完全清理,即将该目录,以及该目录中的所有子目录和文件都进行清理删除。
[0144]有效性清理,即对该目录中超过有效时长的文件,即失去时效的文件进行清理删除。
[0145]谨慎清理,即向用户提示执行清理的风险且在接收到用户的确定清理的指令后、对该目录中的所有子目录和文件进行勾选清理。
[0146]部分清理,即对该目录中标识为建议清理的目录或文件进行清理删除;对该目录中标识为谨慎清理的目录或文件,在接收到用户的确定清理的指令后进行清理删除;对该目录中未标识为建议清理或者谨慎清理的目录或文件,不进行勾选清理。
[0147]其中,清理数据库中记录的清理数据的所属类别具体可以包括:内存数据、缓存数据、系统盘垃圾数据、广告数据、安装包数据、卸载残留数据、大文件数据等等。
[0148]S302:周期性地根据内存的清理数据扫描的进度,以及非易失性存储空间的清理数据扫描的进度,计算出总体进度。
[0149]具体地,可以在清理数据的扫描过程中,根据如下公式I计算出第i个周期到达时的总体进度Ji:
[0150]Ji = jciwc+jfiwf (公式 I)
[0151]式中,Jci为第i个周期到达时内存的清理数据扫描的进度,Jfi为第i个周期到达时非易失性存储空间的清理数据扫描的进度。为内存扫描占总体进度的占比权重,Wf为非易失性存储空间扫描占总体进度的占比权重;i为自然数。
[0152]其中,内存扫描占总体进度的占比权重、以及非易失性存储空间扫描占总体进度的占比权重是预先设定的。例如,假如内存的清理数据扫描完成后,其进度占总体进度的50% ;相应地,非易失性存储空间的清理数据扫描后,其进度占总体进度的50%,则可以将内存扫描占总体进度的占比权重设定为0.5,将非易失性存储空间扫描占总体进度的占比权重设定为0.5。这样,在当前扫描的内存的清理数据的进度为50%、非易失性存储空间的清理数据的进度为20%时,根据上述公式1、以及预先设定的占比权重,计算出总体进度为35%。
[0153]当然,实际应用中,也可以采用别的方法来计算总体进度,例如,可以根据内存的清理数据扫描的进度、非易失性存储空间的清理数据扫描的进度、内存和非易失性存储空间各自的大小,来计算总体进度。
[0154]S303:在显示界面上,根据总体进度进行进度表示器的进度显示。
[0155]本步骤中,在显示界面上,根据步骤S302周期性计算出的总体进度,可以通过如图3b所示的进度条周期性地进行进度显示。
[0156]当然,实际应用中,进度表示器除了可以具体为进度条,还可以具体为圆形的进度百分比显示器。
[0157]S304:在显示界面上,根据非易失性存储空间的清理数据扫描过程中,当前已扫描的清理数据的大小,显示进度表示器的颜色。
[0158]本发明实施例中,步骤S303、步骤S304并没有先后的执行顺序,即步骤S304可以先于步骤S303、或与步骤S303同时执行。
[0159]具体地,移动终端对存储空间中的内存、以及非易失性存储空间的清理数据进行扫描,在该扫描过程中,可以实时获取当前已扫描的清理数据的大小;针对预先划分的若干数值范围,确定当前已扫描的非易失性存储空间的清理数据的大小所属的数值范围;继而,对于确定出的数值范围,根据预先对应该数值范围设定的颜色值,显示进度表示器的颜色。
[0160]当然,实际应用中,在扫描过程中,进度表示器也可以根据扫描出的非易失性存储空间的清理数据的大小变色。比如,0-20M时界面为蓝色到黄色的渐变,20-100M时为黄色到橙色的渐变,100M以上为橙色到红色。当扫描完成时,已扫描出的数据在某一区间时,终态显示为该区间最大值对应的颜色。如扫描出50M垃圾时,终态显示为橙色。
[0161]更优地,为了便于用户除了对内存与非易失性存储空间的区分,在显示查看总体进度的同时,还可以准确了解内存与非易失性存储空间各自扫描出的清理数据的大小,在显示界面上还可以显示内存的清理数据过程中,当前已扫描的内存的清理数据的大小、非易失性存储空间的清理数据扫描过程中,当前已扫描的非易失性存储空间的清理数据的大小。
[0162]实际应用中,在内存、非易失性存储空间的清理数据扫描完成后,还可以将扫描出的内存的清理数据的大小、非易失性存储空间的清理数据的大小在显示界面上进行分别显示。例如,在如图3c所示的显示界面上,“内存垃圾”表示内存的清理数据,“204MB”表示扫描出的内存的清理数据的大小;“缓存垃圾”表示非易失性存储空间的清理数据,“91.4MB”表示扫描出的非易失性存储空间的清理数据的大小。
[0163]实际应用中,在扫描清理数据的同时往往可以获取清理数据的清理策略。因此,更优地,本发明实施例中,在完成内存、非易失性存储空间的清理数据的扫描后,还可以统计出内存、非易失性存储空间的清理数据的大小总和、以及对应的清理策略为建议清理的所有清理数据的大小,并在显示界面上进行显示。
[0164]例如,在如图3d所示的显示界面上,“135MB”表示的是扫描出的对应的清理策略为建议清理的所有清理数据的大小共发现326MB”表示的是内存、非易失性存储空间的清理数据的大小总和。
[0165]更优地,在进行内存、非易失性存储空间的清理数据扫描过程中,还可以同时在全盘进行可禁止项的扫描,并在扫描结束后,在显示界面上,如图3e所示,对扫描出的可禁止项的大小与扫描出的内存的清理数据的大小、非易失性存储空间的清理数据的大小一起进行显示。
[0166]本实施例中,对内存、非易失性存储空间的清理数据进行扫描的目的在于对内存、非易失性存储空间的清理数据进行清理。因此,更优地,在内存、非易失性存储空间的清理数据扫描完成后,为了减少用户的操作,在显示界面上可以显示“一键清理”按键;接收到“一键清理”按键的点击事件后,移动终端即可将扫描出的内存、非易失性存储空间的清理数据进行一键清理;而无需通过不同的触发操作分别对内存、非易失性存储空间的清理数据进行清理,便于用户的操作。
[0167]更优地,实际应用中,为了便于用户查看扫描出的清理数据,在显示界面上还可以显示“清理数据详情查看”按键。
[0168]相应地,在接收到“清理数据详情查看”按键的点击事件后,如图4a所示,在显示界面中显示如下至少一种类别的数据:内存数据、缓存数据、系统盘垃圾数据、广告数据、安装包数据、卸载残留数据、大文件数据等等。其中,扫描出的清理数据的所属类别具体可以通过在扫描过程中,与预先下载或存储的清理数据库的匹配结果进行确定。这样,在显示界面中显示各类别的数据,可以便于用户清楚地区分内存的清理数据与非易失性存储空间的清理数据,以及对非易失性存储空间的清理数据的具体所属类别的了解,提高用户体验。
[0169]较佳地,“清理数据详情查看”按键还可以具体包括:“内存的清理数据详情查看”按键、“非易失性存储空间的清理数据详情查看”按键。
[0170]例如,在如图3c所示的显示界面上,在“204MB”、“91.4MB”下对应设置有“内存的清理数据详情查看”按键的链接、“非易失性存储空间的清理数据详情查看”按键的链接。
[0171]在接收到“内存的清理数据详情查看”按键的点击事件后,可以在显示界面上显示如图4b所示的内存的清理数据详情;在接收到“非易失性存储空间的清理数据详情查看”按键的点击事件后,可以在显示界面上显示如图4c所示的非易失性存储空间的清理数据的详情。
[0172]进一步地,考虑到扫描出的清理数据往往既存在建议清理的清理数据,也存在谨慎清理的清理数据。因此,为了便于用户了解清理数据的清理策略,更优地,如图4a、4c所示,在显示界面上,对应每种类别的数据,还可以显示有该类别的数据的建议清理的清理数据的大小,以及“展开”按键。
[0173]相应地,在接收到一种类别的数据的“展开”按键的点击事件后,在显示界面上,如图4c或图4d所示,显示该类别的数据下各子项的相关信息;其中,子项的相关信息包括:子项的名称、占用大小、以及勾选状态。
[0174]本实施例中,对于确定为建议清理的清理数据,其在所属类别的数据下通常默认设置为已勾选。例如,考虑到系统盘垃圾数据、以及广告数据通常为建议清理的清理数据,因此,为了减少用户的操作,系统盘垃圾数据、以及广告数据下各子项的勾选状态均默认设置为已勾选。
[0175]这样,通过点击“展开”按键,可以根据显示的该类别的数据下各子项的勾选状态,了解清理数据的清理策略。而一个类别的数据的建议清理的清理数据的大小通常是指该类别的数据下已勾选的各子项占用大小的总和;在接收到“一键清理”按键的点击事件后,可以对已勾选的子项的数据进行清除。
[0176]事实上,对于有些建议清理的清理数据,用户可能并不想清理;而对于有些清理数据,用户可以确定是可以删除的。因此,为了考虑用户的自主性,用户也可以对子项的勾选状态进行调整,以便有效的释放内存和非易失性存储空间。
[0177]更进一步,在清理内存的时候,记录本次清理的程序列表;清理动作完成5秒钟以后,再次扫描内存,获取程序列表并且和第一次清理的程序列表进行对比,找出清理失败的和清理成功但是很快重新启动的程序;对这部分程序进行重新清理,5秒钟以后再次扫描并且重新比对;对于始终无法清理的程序,标识为顽固程序;对于顽固程序中的不常用的用户安装程序,可以引导用户卸载或者停用。
[0178]事实上,本发明方法还提供了若干种基于悬浮窗的文件清理方法,其中一种基于悬浮窗的文件清理方法的流程示意图,如图5所示,包括以下步骤:
[0179]S501,根据对第一悬浮窗操作所产生的调用指令,调用第二悬浮窗。
[0180]在文件清理过程中,第一悬浮窗始终显示,主要为用户展示移动终端的当前内存占用率,当检测到移动终端有文件需清理时,还展示清理提示。
[0181]在本方法中,第一悬浮窗比较小,包括表征内存占用率的圆球和表征清理提示的气球对话框;对于内存占用率,每1s刷新一次;当内存占用率在85%以下,显示蓝色;当内存占用率在85%及以上,显示红色;触发气球对话框时,气球对话框可展开,显示相应的提示文案。
[0182]在本方法中,第二悬浮窗较大,包括内存加速界面、清理界面及常用界面。各界面的功能如下:
[0183]A.内存加速界面包括初始子界面和完成子界面,初始子界面用于显示当前内存占用率,其上设有点击加速功能控件,该控件用于调用完成子界面。
[0184]内存加速的具体过程为:加速前,初始子界面展示当前内存占用率,当内存占用率小于85%时,初始子界面显示蓝色,当内存占用率为85%及以上时,初始子界面显示红色;点击加速功能控件后,内存占用率从初始值下降至0%再回升至加速后的内存占用率,界面颜色也发生相应的变化,最终生成完成子界面。
[0185]其中,完成子界面还显示提速了多少,提速多少的计算方法为:加速前的当前内存占用率减去加速后的当前内存占用率,若二者的差值小于I %,完成子界面则显示“已达最佳”。
[0186]其中,初始子界面显示的当前内存占用率从第一悬浮窗读取,与第一悬浮窗展示的内存占用率相同。
[0187]B.清理界面包括扫描子界面、停止扫描子界面、清理子界面及已清理子界面。扫描子界面、停止扫描子界面、清理子界面上分别设有扫描功能控件、停止扫描功能控件、一键清理功能控件,扫描功能控件用于调用停止扫描子界面,停止扫描功能控件用于调用清理子界面,一键清理功能控件用于调用已清理子界面。
[0188]清理的具体过程为:清理前,扫描子界面展示当前存储值;点击扫描功能控件后,停止扫描子界面显示扫描出的垃圾值;点击停止扫描功能控件后,若已扫描出垃圾,转至清理子界面,若未扫描出垃圾,则转至扫描子界面;清理子界面显示已扫描出的垃圾,此界面上还设有详情控件,用于查询垃圾详情;点击一键清理功能控件后,已清理子界面显示已清理的垃圾。
[0189]其中,若扫描出的垃圾小于等于50M,则停止扫描子界面、清理子界面为蓝色;若扫描出的垃圾大于50M,则停止扫描子界面、清理子界面为红色。
[0190]C.常用界面包括自启管理功能控件、卸载预装功能控件、隐私清理功能控件、游戏/视频加速功能控件、软件卸载功能控件及定时清理功能控件。上述功能控件均为相应功能的入口。
[0191]上述各界面均设有设置控件和进入系统界面的控件,其中,设置控件用于对第二悬浮窗进行设置。
[0192]根据第一悬浮窗展示的内容,调用的第二悬浮窗的显示状态包括以下两种情况:
[0193]A.当第一悬浮窗为内存占用率展示时,第二悬浮窗显示常规界面,该常规界面具体为内存加速界面。
[0194]B.当第一悬浮窗为内存占用率和清理提示展示时,第二悬浮窗显示常规界面、且常规界面上增加清理提示区域。其中,清理提示区域为控件区域。
[0195]其中,清理提示区域设有与第一悬浮窗的清理提示相对应的提示文案。
[0196]在其他方法中,当清理提示与第二悬浮窗界面的功能相对应时,第二悬浮窗直接显示清理提示所需的界面。
[0197]S502,接收对第二悬浮窗操作所产生的清理指令。
[0198]由于本方法是基于第二悬浮窗进行清理的,因此需要对第二悬浮窗进行操作,具体为对第二悬浮窗的功能控件或清理提示区域进行操作。
[0199]S503,根据清理指令,对文件进行清理。
[0200]A.根据对功能控件操作所产生的清理指令,对文件进行清理。
[0201]当第一悬浮窗没有清理提示时,用户可自行选择功能控件进行清理。
[0202]需要指出的是,当第一悬浮窗存在清理提示时,用户也可自行选择第二悬浮窗的功能控件进行清理。
[0203]B.根据对清理提示区域操作所产生的清理指令,调用第二悬浮窗的界面或系统界面,对文件进行清理。
[0204]下面通过具体方法对B种清理方式进行详细阐述。
[0205]a.当用户手机新安装软件后,检测新安装的软件中是否有开机/后台自启权限,若有且已获取Root权限,则第一悬浮窗进行提示。
[0206]点击第一悬浮窗,调用第二悬浮窗,第二悬浮窗清理提示区域显示文案“新增自启软件,点此处理。”,点击清理提示区域后,跳转至第二悬浮窗的常用界面,由常用界面的自启管理功能控件进入自启管理系统界面,进行自启管理。
[0207]b.手机解锁屏后,检测内存空间,若内存空间不足20%,第一悬浮窗进行提示,此检测可间隔预定时间进行检测。
[0208]点击第一悬浮窗,调用第二悬浮窗,第二悬浮窗清理提示区域显示文案“内存空间不足20%,点此释放空间”,点击清理提示区域后,进入系统盘符分析界面,进而进行进一步的清理。
[0209]c.手机解锁屏后,检测存储空间,若存储空间不足20 %,第一悬浮窗进行提示,此检测可间隔预定时间进行检测。
[0210]点击第一悬浮窗,调用第二悬浮窗,第二悬浮窗清理提示区域显示文案“存储空间不足20%,点此释放空间”,点击清理提示区域后,进入系统盘符分析界面,进而进行进一步的清理。
[0211]d.手机解锁屏后,检测可正常卸载预装软件是否超过5款,若超过且已获得Root权限,第一悬浮窗进行提示,此检测可间隔预定时间进行检测,在预定时间内,提示次数也可根据需要进行限定。
[0212]点击第一悬浮窗,调用第二悬浮窗,第二悬浮窗清理提示区域显示文案“5款预装软件可卸载,点此释放空间”,点击清理提示区域后,跳转至第二悬浮窗的常用界面,由常用界面的卸载预装功能控件进入卸载预装系统界面,进行卸载。
[0213]手机解锁屏后,检测可正常卸载预装软件是否超过5款,若超过但没有获得Root权限,第一悬浮窗同样进行提示。
[0214]第二悬浮窗清理提示区域显示的文案为“5款预装软件可停用,点此释放空间”,点击清理提示区域,进入相应的系统界面。
[0215]e.手机解锁屏后,检测不常用软件是否超过5款,若超过,第一悬浮窗进行提示,此检测可间隔预定时间进行检测。其中,当本次检测的不常用软件个数与上次检测的不常用软件个数相同,则本次不进行提示。
[0216]点击第一悬浮窗,调用第二悬浮窗,第二悬浮窗清理提示区域显示文案“5款不常用软件可卸载,点此释放空间”,点击清理提示区域后,跳转至第二悬浮窗的常用界面,由常用界面的软件卸载功能控件进入软件卸载系统界面,进行卸载。
[0217]f.手机解锁屏后,检测同类软件是否超过3款,若超过,第一悬浮窗进行提示,此检测可间隔预定时间进行检测。
[0218]点击第一悬浮窗,调用第二悬浮窗,第二悬浮窗清理提示区域显示文案“同类软件过多,点击释放空间”,点击清理提示区域,跳转至相应的系统界面或弹框,进行卸载。
[0219]其中,第一悬浮窗还可对系统中用户没有使用的新功能进行提醒。
[0220]在其他方法中,当手机锁屏且与电脑通过USB线连接,在晚上501-5点之间,检测是否存在大于100M的可清理的存储垃圾,若存在,第一悬浮窗进行提示,此检测可间隔预定时间进行检测。
[0221]点击第一悬浮窗,调用第二悬浮窗,第二悬浮窗直接展示其清理界面,进行垃圾清理。
[0222]以上各种方式,第一悬浮窗预定时间内(如2个小时)不再产生新的提示。
[0223]在本方法中,清理提示是否生效、清理提示区域的文案、检测时机及提示间隔等都可进行云控。
[0224]以上所述,本方法利用第一悬浮窗对移动终端中需清理的文件进行即时提醒,并基于第二悬浮窗进行清理,方便用户的操作,提高用户体验。
[0225]请参阅图6,图6为本发明另一种基于悬浮窗的文件清理方法的流程示意图,如图6所示,包括以下步骤:
[0226]S601,根据对第一悬浮窗操作所产生的调用指令,调用第二悬浮窗。
[0227]S602,接收对第二悬浮窗操作所产生的清理指令。
[0228]S603,根据清理指令,对文件进行清理。
[0229]在本方法中,步骤S601、S602、S603与图5所示方法中的步骤相同,在此不再赘述。
[0230]S604,文件清理完成后,预定时间内关闭第二悬浮窗。
[0231]第二悬浮窗可在预定时间内自动关闭,也可用户自行关闭。
[0232]S605,第二悬浮窗关闭后,调用相应的对文件清理进行引导的弹窗。
[0233]下面通过具体方法进行详细说明。
[0234]a.第二悬浮窗关闭后,调用用于设置忽略应用名单的弹窗,通过弹窗将经常使用的软件加入到忽略应用名单中,避免被清理。具体为,用户点击弹窗上的设置忽略应用名单按钮,进入忽略应用名单界面;用户也可点击弹窗上的取消按钮,关闭弹窗。
[0235]b.第二悬浮窗关闭后,若系统已获得Root权限,检测移动终端中是否有建议禁止自启的软件,若有,调用用于自启管理的弹窗。具体为,弹窗通过checkbox的形式展示建议禁止自启的软件,用户可进行勾选;用户也可点击弹窗上的取消按钮,关闭弹窗。
[0236]c.第二悬浮窗关闭后,若系统未获取Root权限,检测移动终端中是否有建议停用的预装软件,若有,调用用于停用预装软件的弹窗。具体为,点击弹窗上的停用按钮,跳转至卸载预装界面;点击弹窗上的取消按钮,关闭弹窗。利用该弹窗停用某些常驻后台的预装软件,可有效降低内存的占用。
[0237]d.第二悬浮窗关闭后,当没有检测到建议禁止自启的软件或建议停用的预装软件时,检测移动终端中是否存在不常用软件,若存在,调用用于卸载软件的弹窗。具体为,点击卸载按钮,跳转至卸载软件界面;点击取消按钮,关闭弹窗。
[0238]e.第二悬浮窗关闭后,当没有检测到建议禁止自启的软件、建议停用的预装软件或不常用软件时,检测是否已开启自动清理,若未开启,调用用于开启自动清理内存的弹窗。
[0239]以上所述,本方法利用弹窗可进一步完善文件清理的方法,提高用户体验,使得用户及时清理需清理的文件。
[0240]更优的,本发明实施例还提供两种清理缓存文件的方法,其中一种清理缓存文件的方法方法的流程示意图,如图7所述,包括以下步骤:
[0241]S701,获取缓存信息及与缓存信息对应的原文件信息。
[0242]本方法的方法适用于智能终端缓存文件的清理,尤其是移动终端中缓存文件的清理。智能终端首先获取缓存信息及原文件信息,下面以具体类型的文件为例,对缓存文件信息和原文件信息进行说明。
[0243]A.应用程序
[0244]应用程序在运行或安装过程中,会产生相应的缓存文件,使得应用程序在后续运行时,不需再进行解析,从而提高应用程序的运行速度。
[0245]本方法方法的应用场景为,当应用程序非正常卸载时,其相应的某些缓存文件仍然存在,由于无法识别清理,使得这些缓存文件一直占用缓存空间,若此类缓存文件过多,会影响智能终端的性能,降低用户体验。
[0246]因此,对于应用程序无效缓存文件的识别清理,缓存信息为虚拟机缓存包名,即虚拟机缓存文件的包名,原文件信息为已安装文件包名,通常为已安装文件列表中各文件的包名。
[0247]B.图片
[0248]图片的缓存为缩略图,通过缩略图可实现对图片的快速浏览。
[0249]本方法方法的应用场景为,当原图片不存在时,若其相应的缩略图没有及时清理,会占用缓存空间,影响智能终端的性能。
[0250]因此,对于图片无效缓存文件的识别清理,缓存信息为缩略图信息,具体为数据库中thumbnails表中的信息,原文件信息为与缩略图信息呈映射关系的原图信息,即数据库中图片表(image表)中的信息。
[0251]S702,将缓存信息与原文件信息进行匹配。
[0252]结合上述A、B两种场景的分析,可以将缓存信息与原文件信息理解为存在对应关系的两个对象,理论上,缓存信息与原文件信息相互之间应保持对应关系,如果一条缓存信息无法与所有原文件信息对应,这种情况下便可将该条缓存信息视为待清理对象。
[0253]对于应用程序无效缓存文件的识别清理,将虚拟机缓存包名与已安装文件包名进行匹配,当虚拟机缓存包名中的文件包名在已安装文件包名中匹配不到与其相对应的文件包名时,此文件包名所对应的缓存文件为无效缓存文件。
[0254]具体为,将.dex文件中的包名与已安装文件列表中的包名进行匹配,当.dex文件中的文件包名在已安装文件列表中找不到与其相对应的文件包名时,说明此文件包名所对应的文件没有处于安装状态,因此,此文件包名对应的缓存文件为无效缓存文件。
[0255]对于图片无效缓存文件的识别清理,将缩略图信息与原图信息进行匹配,当缩略图信息中的文件信息在原图信息中匹配不到与其相对应的文件信息时,此文件信息对应的缓存文件为无效缓存文件。
[0256]具体为,将thumbnails表中的信息与image表中的信息进行匹配,当thumbnails表中的ID在image表中找不到与其相对应的ID时,说明此ID所对应的图片文件已删除,因此,此ID对应的缩略图为无效缩略图。
[0257]S703,当缓存信息中的文件信息在原文件信息中匹配不到与其相对应的文件信息时,清理文件信息对应的缓存文件。
[0258]识别出无效缓存文件后,对无效缓存文件进行清理。
[0259]以上所述,本方法清理缓存文件的方法,能够对缓存中的无效缓存文件进行识别清理,避免用户清理无效缓存时需一键清理或选择清理,改善用户体验效果。
[0260]请参阅图8,图8为本发明清理缓存文件的另一方法的流程示意图,如图8所示,包括以下步骤:
[0261]S801,获取缓存信息及与缓存信息对应的原文件信息。
[0262]S802,将缓存信息与原文件信息进行匹配。
[0263]S803,当缓存信息中的文件信息在原文件信息中匹配不到与其相对应的文件信息时,将文件信息对应的缓存文件标识为无效。
[0264]S804,在缓存信息与原文件信息匹配完成后,清理标识为无效的缓存文件。
[0265]其中,步骤S801、S802与图7所示方法中的步骤S701、S702相同,在此不再赘述。
[0266]在本方法中,将识别出的无效缓存文件进行标识,当匹配完成后,将所有标识为无效的缓存文件进行清理。
[0267]需要指出的是,智能终端可根据用户指令或定时触发启动步骤S801,当匹配完成后,智能终端可根据用户指令或自动对标识为无效的缓存文件进行清理。
[0268]更优的,本发明还提供了移动终端中存储的安装包的清理方法,该方法的流程示意图如图9所示,包括如下步骤:
[0269]步骤901、扫描到移动终端中存储的安装包时,解析安装包的目录信息。
[0270]在本方法中,当用户需要清理移动终端中存储的安装包时,首先启动清理软件扫描安装包,当扫描到移动终端中存储的安装包时,解析安装包的目录信息,目录信息包括安装包的名称、文件格式、大小等。根据安装包的目录信息,在数据库中查找到匹配的安装包目录,然后解析出查找到的安装包的目录信息所对应的目录类别,其中,数据库为移动终端预先从服务器侧下载的。在解析出安装包的目录信息之后,进入步骤902。
[0271]步骤902、根据安装包的目录信息,确定安装包的目录类别。
[0272]在本步骤中,根据安装包的目录信息,确定安装包的目录类别。本实施例中,安装包的目录类别包括:备份目录、缓存目录、非缓存目录和白名单目录。其中,备份目录可以是安装包存储在本地的本地备份目录,也可以是安装包存储在云端的云端备份目录。缓存目录是指安装包存储在缓存中的缓存目录;非缓存目录是指安装包存储在SD卡等非缓存中的目录;白名单目录是指用户自行设定的用于存储安装包的文件的目录,白名单目录对应的安装包是用户需要保留的安装包,但也可以由用户来手动删除。确定安装包的目录类别之后,进入步骤903。
[0273]步骤903、按照与确定出的目录类别所对应的勾选规则,决定是否将安装包勾选为待清理的安装包。
[0274]在本方法中,安装包的目录类别包括:安装包的目录类别包括:备份目录、缓存目录、非缓存目录和白名单目录。当目录类别具体为备份目录,与备份目录所对应的勾选规则具体包括:若根据安装包的目录信息,进一步判定安装包为本地备份目录,则不勾选安装包;若根据安装包的目录信息,进一步判定安装包为云端备份目录,则勾选已经安装到移动终端的安装包,不勾选未安装到移动终端的安装包。
[0275]在安装包的目录信息为缓存目录的情况下,不勾选预设时长内下载的版本最高且未安装到移动终端的安装包,勾选其余的安装包。
[0276]在安装包的目录信息为非缓存目录的情况下,不勾选未安装的最高版本的安装包,勾选破损的安装包、重复的安装包和已经安装的安装包。
[0277]在安装包的目录信息为用户制定的白名单目录的情况下,不勾选安装包。
[0278]在本步骤中,按照与确定出的目录类别所对应的勾选规则,决定是否将安装包勾选为待清理的安装包,不勾选不需要清理的安装包,然后进入步骤904。
[0279]步骤904、清理勾选出的安装包。
[0280]在本步骤中,通过移动终端中安装的清理软件来清理已经被勾选的安装包,以避免存储的安装包占用的空间太大的问题,提高影响移动终端的运行速度和改善用户的使用体验,同时,也能保留未勾选的安装包,未勾选的安装包括最高版本的安装包或还未安装的安装包。清理已被勾选出的安装包具体包括:删除已被勾选的安装包,或者提醒用户卸载已被勾选的低版本的安装包的运行程序。
[0281 ] 更进一步的,本发明实施例还提供了几种清理方法。
[0282]例如,在扫描的过程中,对出现在前台的程序记录使用时间,同时排除输入法、桌面以及桌面相关的程序、系统程序。长时间不使用的软件可以判断为不常用软件。扫描过程中优先推荐对不常用软件进行清理。
[0283]或者,对于部分和时间有关系的程序,比如新闻阅读程序、聊天程序,其图片缓存、聊天记录也具有时间特性,超过一定时间的缓存将很少被用户使用到。扫描程序匹配的缓存文件,对比缓存的属性,发现图片缓存、聊天记录的时候,判断文件的时间戳,超过一定阈值的将会标识为可以清理。
[0284]或者,可以将已安装程序的信息发送至服务器,以使服务器根据程序信息及预存的缓存清理数据库生成目录识别信息和清理命令;接收服务器反馈的目录识别信息和清理命令,依次扫描本地目录结构,并且通过匹配目录信息来获取对应目录的清理命令,最后执行相应的命令进行清理。
[0285]或者,可以将已安装的系统程序的信息发送至服务器,以使服务器根据程序信息及预存的预装程序数据库生成识别信息和卸载命令;接收服务器反馈的程序识别信息和卸载命令,按照相应的命令对程序进行卸载。
[0286]更进一步,程序在用户手机中运行的时候,用户的行为会触发软件的不同功能,可能产生不同的目录或者文件,有些是已经识别的,有些是尚未识别的;尚未识别的部分会上传服务器端记录下来;服务器端会对此部分目录进行进一步识别和验证,并补充到识别数据库;下次对目录或者文件进行识别的时候,这部分内容将会生效。这种方法能够不断通过用户的行为补全目录或者文件的识别数据,避免误删或者遗漏。
[0287]此外,扫描软件列表并解析其配置文件,找出订阅关键事件的软件,通过系统提供的API来禁止其对事件的订阅,从而实现防止自启动的目的。
[0288]本发明实施例的技术方案中,移动终端中的扫描装置在扫描存储空间的过程中,可以跳过对时间戳保持不变的底层目录的扫描,从而节省扫描时间,提高扫描的效率和响应时间,提闻用户的体验。
[0289]而且,本发明实施例的技术方案中,还可以跳过对各子目录都为底层目录、且各子目录时间戮都保持不变的目录的扫描,进一步节省扫描时间,提闻扫描的效率和响应时间。
[0290]进一步,本发明实施例的技术方案中,还可以无需扫描目录,根据目录中文件的数量和大小直接获得该目录的扫描结果;或者根据扫描策略跳过对该目录的扫描;从而进一步节省扫描时间,提高扫描的效率和响应时间。
[0291]本【技术领域】技术人员可以理解,本发明包括涉及用于执行本申请中所述操作中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、⑶-ROM、和磁光盘)、ROM(Read-Only Memory,只读存储器)、RAM (Random Access Memory,随即存储器)、EPROM (Erasable ProgrammableRead-Only Memory,可擦写可编程只读存储器)、EEPROM(ElectricalIy ErasableProgrammable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。
[0292]本【技术领域】技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本【技术领域】技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本发明公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
[0293]本【技术领域】技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
[0294]以上所述仅是本发明的部分实施方式,应当指出,对于本【技术领域】的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
【权利要求】
1.一种移动终端中存储空间的扫描方法,其特征在于,包括: 对存储空间进行扫描时,读取当前待扫描的目录的当前时间戳; 将读取的时间戳与扫描记录中所述目录的时间戳进行比较; 若判断两者一致,则在确定所述目录为底层目录后,跳过对所述目录的扫描,并将上次扫描过程中得到的所述目录的信息,作为本次扫描过程中得到的所述目录的信息进行记录。
2.根据权利要求1所述的方法,其特征在于,在所述判断两者一致后,还包括: 若确定所述目录不是底层目录,则: 继续获取所述目录下各子目录的当前时间戳; 对于每个子目录,将该子目录的当前时间戳与所述扫描记录中该子目录的时间戳进行比较;根据比较结果,决定是否跳过对该子目录的扫描。
3.根据权利要求1或2所述的方法,其特征在于,还包括: 若所述扫描记录中没有所述目录的时间戳,则: 读取所述目录的当前时间戳存入到扫描记录中;并 对所述目录进行扫描,将本次扫描得到的所述目录的信息进行记录。
4.根据权利要求1或2所述的方法,其特征在于,还包括: 若查找出的时间戳与所述目录的当前时间戳不同,则: 将所述目录的当前时间戳替换掉所述扫描记录中记载的所述目录的时间戳;并 对所述目录进行扫描,将本次扫描得到的所述目录的信息进行记录。
5.根据权利要求1或2所述的方法,其特征在于,在所述对存储空间进行扫描时,还包括: 确定所述目录下的文件的数量;以及 所述读取当前待扫描的目录的当前时间戳,具体为: 在确定当前待扫描的目录下的文件的数量超过设定阈值时,读取该目录的当前时间戳。
6.根据权利要求2所述的方法,其特征在于,在所述确定所述目录不是底层目录后,还包括: 确定所述目录的层级;以及 所述继续获取所述目录下各子目录的当前时间戳,具体为: 若所述目录的层级小于预设的层级数,则继续获取所述目录下各子目录的当前时间戳。
7.一种移动终端中存储空间的扫描装置,其特征在于,包括: 扫描模块,用于对存储空间进行扫描时,读取当前待扫描的目录的当前时间戳,并输出查找通知;若接收的比较结果为一致,则在确定所述目录为底层目录后,跳过对所述目录的扫描,并将上次扫描过程中得到的所述目录的信息,作为本次扫描过程中得到的所述目录的信息进行记录; 查找比对模块,用于接收到所述查找通知后,从扫描记录中查找出所述目录的时间戳,将查找出的时间戳与所述扫描模块读取的时间戳进行比较;并返回比较结果。
8.根据权利要求7所述的装置,其特征在于, 所述扫描模块还用于在所述接收的比较结果为一致后,若确定所述目录不是底层目录,继续获取所述目录下各子目录的当前时间戳,并针对每个子目录输出查找通知;之后,根据针对每个子目录返回的比较结果,决定是否跳过对相应子目录的扫描:对于每个子目录,在接收到该子目录返回的比较结果为一致后,若确定出该子目录为底层目录,则跳过对所述子目录的扫描,并将上次扫描过程中得到的所述子目录的信息,作为本次扫描过程中得到的所述子目录的信息进行记录。
9.根据权利要求7或8所述的装置,其特征在于, 所述查找比对模块还用于接收到所述查找通知后,若在所述扫描记录中没有查找到所述目录的时间戳,则将所述目录的当前时间戳存入到扫描记录中,并输出无记录通知;以及 所述扫描模块还用于在接收到所述无记录通知后,对所述目录进行扫描,将本次扫描得到的所述目录的信息进行记录。
10.根据权利要求7或8所述的装置,其特征在于, 所述查找比对模块还用于接收到所述查找通知后,若判断出查找出的时间戳与所述目录的当前时间戳不同,则将所述目录的当前时间戳替换掉所述扫描记录中记载的所述目录的时间戳,并输出不一致的比较结果;以及 所述扫描模块还用于接收到不一致的比较结果后,对所述目录进行扫描,将本次扫描得到的所述目录的信息进行记录。
【文档编号】G06F17/30GK104317952SQ201410641200
【公开日】2015年1月28日 申请日期:2014年11月13日 优先权日:2014年11月13日
【发明者】刘伟刚, 肖文峰 申请人:北京奇虎科技有限公司, 奇智软件(北京)有限公司