CN115421820B - 一种基于安卓应用的自动清理方法、系统和可读存储介质 - Google Patents
一种基于安卓应用的自动清理方法、系统和可读存储介质 Download PDFInfo
- Publication number
- CN115421820B CN115421820B CN202211367004.4A CN202211367004A CN115421820B CN 115421820 B CN115421820 B CN 115421820B CN 202211367004 A CN202211367004 A CN 202211367004A CN 115421820 B CN115421820 B CN 115421820B
- Authority
- CN
- China
- Prior art keywords
- android application
- user
- duration limit
- application
- barrier
- 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
Images
Classifications
-
- 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
- G06F9/44594—Unloading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3055—Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3438—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
-
- 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
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/865—Monitoring of software
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种基于安卓应用的自动清理方法、系统和可读存储介质,包括:在需要使用无障碍清理服务功能的应用内注册实现监听接口,通过监听接口监听应用内所有应用程序组件Activity的状态,把所有应用打开的应用程序组件Activity添加到List内;自定义一个无障碍清理服务类来实现辅助功能;在自定义的无障碍清理服务类内判断是否是打开无障碍清理服务功能的应用,如果是,则开始计时并用Handler发送一个消息;在达到设置的退出时长界限时,如果期间内又拦截到用户进行了操作则需要重新计时,如果期间内未拦截到用户的操作则自动退出对应的应用。本发明自动清除闲置应用,释放内存空间提升安卓设备的流畅度。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种基于安卓应用的自动清理方法、系统和可读存储介质。
背景技术
目前,随着科技水平的发展和进步,各种基于安卓设备的便捷的应用也越来越多,人们不断的更换或完善电子设备的应用,来满足自身在不同时期的不同需求,安卓设备已成为人们必不可少的日常办公工具。
人们通过安卓设备的不同应用进行网页浏览、聊天或是游戏等活动,在此过程中,各应用程序的缓存文件会越来越多,导致应用所占的储存空间也越来越大,而用户在使用安卓设备时几乎不会自动提醒用户去清理安卓设备的应用缓存所占的存储空间,因此导致电子设备速度不断减慢、耗电量变大而影响正常使用。安卓设备的应用在使用一段时间都会出现卡顿、内存不足问题 。
发明内容
为了解决上述至少一个技术问题,本发明提出了一种基于安卓应用的自动清理方法、系统和可读存储介质,可以根据客户喜好用户自主设置固定时间内没有操作自动清除闲置安卓应用释放安卓设备的内存空间,进一步提升安卓设备的流畅度。
本发明第一方面提出了一种基于安卓应用的自动清理方法,所述方法包括:
在应用清单文件添加声明,申请无障碍清理服务的权限及在元数据meta-data里添加配置文件;
在需要使用无障碍清理服务功能的安卓应用内注册实现ActivityLifeCycleCallback接口,通过ActivityLifeCycleCallback接口监听安卓应用内所有应用程序组件Activity的状态,把所有安卓应用打开的应用程序组件Activity添加到List内;
自定义一个无障碍清理服务类来实现辅助功能;
默认打开系统的可访问性开启ACCESSIBILITY_ENABLED、及设置自定义的无障碍清理服务类的ENABLED_ACCESSIBILITY_SERVICES值;
在自定义的无障碍清理服务类内判断是否是打开无障碍清理服务功能的安卓应用,如果是,则开始计时并用Handler发送一个消息;
在达到设置的退出时长界限时,如果期间内又拦截到用户进行了操作则需要重新计时,如果期间内,未拦截到用户的操作则自动退出对应的安卓应用。
本方案中,无障碍清理服务类的ENABLED_ACCESSIBILITY_SERVICES值,具体包括:
用户是否在安卓应用内开启无障碍清理服务功能;
设置的自动退出时长界限;
根据配置文件中设置响应的无障碍清理服务的事件类型进行拦截。
本方案中,在达到设置的退出时长界限之前,所述方法还包括:
构建退出时长界限预测模型;
创建样本数据库,并基于样本数据库中的样本数据对退出时长界限预测模型训练,得到优化后的退出时长界限预测模型;
获取当前用户使用安卓应用的历史数据信息;
将历史数据信息输入退出时长界限预测模型,输出预测的退出时长界限。
本方案中,在输出预测的退出时长界限之后,所述方法还包括:
获取其他用户的安卓应用使用信息,其他用户的安卓应用使用信息至少包括使用安卓应用的数据信息和环境信息,以及实际退出时长界限;
获取当前用户使用安卓应用的环境信息,并进行特征计算,得到第一特征值;
对其他用户使用安卓应用的环境信息进行特征计算,得到第二特征值;
将当前用户的第一特征值与其他用户的第二特征值进行差异度计算,得到特征差异值;
将特征差异值小于第一预设阈值的其他用户的安卓应用使用信息加入修正数据库;
基于修正数据库中每个其他用户的安卓应用使用信息,将使用安卓应用的数据信息通过退出时长界限预测模型进行预测,得到预测退出时长界限;
基于修正数据库中每个其他用户的安卓应用使用信息,将对应的实际退出时长界限减去对应的预测退出时长界限,得到周期差值;
对修正数据库中多个其他用户的周期差值进行平均化计算,得到周期修正值;
在预测的退出时长界限基础上,加上周期修正值,得到修正后的退出时长界限。
本方案中,把所有安卓应用打开的应用程序组件Activity添加到List之后,所述方法还包括:
获取当前时刻对第一安卓应用的第一操作;
计算List内所有应用程序组件Activity与当前对第一安卓应用的第一操作之间的第一相似度;
判断第一相似度是否大于第二预设阈值,如果是,则将对应应用程序组件Activity的第三安卓应用暂时中止无障碍清理服务功能,直至下一个退出时长界限开启无障碍清理服务功能;
在下一时刻获取对第二安卓应用的第二操作,且下一时刻与当前时刻之间的时差小于退出时长界限;
计算List内所有应用程序组件Activity与当前对第二安卓应用的第二操作之间的第二相似度;
判断第二相似度是否大于第二预设阈值,如果是,则将对应应用程序组件Activity的第四安卓应用暂时中止无障碍清理服务功能,直至下一个退出时长界限开启无障碍清理服务功能,同时恢复第三安卓应用的无障碍清理服务功能。
本方案中,所述方法还包括:
预设退出时长界限的更新周期T;
在当前的更新周期T内,记录用户的人为操作信息并加入更新数据库,其中人为操作信息包括:
由无障碍清理服务基于原始的退出时长界限t1退出对应的安卓应用之后,经过时间段t2后,由用户又重新打开了对应的安卓应用,则记录此次用户的人为操作信息,且此次人为操作信息包括上次对安卓应用的操作时间节点到重新打开安卓应用的时间节点之间的操作时间间隔t3= t1+ t2;
如果在原始的退出时长界限t1内,用户手动关闭了对应的安卓应用,记录此次用户的人为操作信息,且此次人为操作信息包括上次对安卓应用的操作时间节点到关闭安卓应用时间节点之间的操作时间间隔t4;
基于更新数据库的人为操作信息,通过预设的更新算法计算得到更新后的退出时长界限,并将更新的退出时长界限作为下一个更新周期T的退出时长界限。
本方案中,基于更新数据库的人为操作信息,通过预设的更新算法计算得到更新后的退出时长界限,具体包括:
将更新数据库中每个人为操作信息的操作时间间隔与其他人为操作信息的操作时间间隔逐一作差计算,得到多个间隔差值;
判断每个间隔差值是否大于第三预设阈值,如果是,则标记前者人为操作信息的操作时间间隔为疑似离散间隔;
待更新数据库中所有人为操作信息的操作时间间隔均完成两两作差比对后,统计每个人为操作信息的操作时间间隔被标记为疑似离散间隔的总次数;
判断每个人为操作信息的操作时间间隔被标记为疑似离散间隔的总次数是否大于第四预设阈值,如果是,则标记对应人为操作信息的操作时间间隔为离散间隔;
将标记为离散间隔的人为操作信息从更新数据库中剔除;
对更新数据库中保留下的所有人为操作信息的操作时间间隔进行平均化计算,得到操作时间间隔平均值;
将操作时间间隔平均值作为更新后的退出时长界限。
本发明第二方面还提出一种基于安卓应用的自动清理系统,包括存储器和处理器,所述存储器中包括一种基于安卓应用的自动清理方法程序,所述基于安卓应用的自动清理方法程序被所述处理器执行时实现如下步骤:
在应用清单文件添加声明,申请无障碍清理服务的权限及在元数据meta-data里添加配置文件;
在需要使用无障碍清理服务功能的安卓应用内注册实现ActivityLifeCycleCallback接口,通过ActivityLifeCycleCallback接口监听安卓应用内所有应用程序组件Activity的状态,把所有安卓应用打开的应用程序组件Activity添加到List内;
自定义一个无障碍清理服务类来实现辅助功能;
默认打开系统的可访问性开启ACCESSIBILITY_ENABLED、及设置自定义的无障碍清理服务类的ENABLED_ACCESSIBILITY_SERVICES值;
在自定义的无障碍清理服务类内判断是否是打开无障碍清理服务功能的安卓应用,如果是,则开始计时并用Handler发送一个消息;
在达到设置的退出时长界限时,如果期间内又拦截到用户进行了操作则需要重新计时,如果期间内,未拦截到用户的操作则自动退出对应的安卓应用。
本方案中,所述基于安卓应用的自动清理方法程序被所述处理器执行时还实现如下步骤:
预设退出时长界限的更新周期T;
在当前的更新周期T内,记录用户的人为操作信息并加入更新数据库,其中人为操作信息包括:
由无障碍清理服务基于原始的退出时长界限t1退出对应的安卓应用之后,经过时间段t2后,由用户又重新打开了对应的安卓应用,则记录此次用户的人为操作信息,且此次人为操作信息包括上次对安卓应用的操作时间节点到重新打开安卓应用的时间节点之间的操作时间间隔t3= t1+ t2;
如果在原始的退出时长界限t1内,用户手动关闭了对应的安卓应用,记录此次用户的人为操作信息,且此次人为操作信息包括上次对安卓应用的操作时间节点到关闭安卓应用时间节点之间的操作时间间隔t4;
基于更新数据库的人为操作信息,通过预设的更新算法计算得到更新后的退出时长界限,并将更新的退出时长界限作为下一个更新周期T的退出时长界限。
本发明第三方面还提出一种计算机可读存储介质,所述计算机可读存储介质中包括一种基于安卓应用的自动清理方法程序,所述基于安卓应用的自动清理方法程序被处理器执行时,实现如上述的一种基于安卓应用的自动清理方法的步骤。
本发明提出的一种基于安卓应用的自动清理方法、系统和可读存储介质,使得用户可以根据自己喜好设置是否开启及无操作自动退出安卓应用的固定时间,可以更加人性化自动帮用户释放内存空间,解决了安卓设备持续使用一段时间出现卡顿、内存不足的问题,提高用户使用体验感。
本发明的附加方面和优点将在下面的描述部分中给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1示出了本发明一种基于安卓应用的自动清理方法的流程图;
图2示出了本发明一种基于安卓应用的自动清理系统的框图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
图1示出了本发明一种基于安卓应用的自动清理方法的流程图。
如图1所示,本发明第一方面提出一种基于安卓应用的自动清理方法,所述方法包括:
S102,在应用清单文件添加声明,申请无障碍清理服务的权限及在元数据meta-data里添加配置文件;
S104,在需要使用无障碍清理服务功能的安卓应用内注册实现ActivityLifeCycleCallback接口,通过ActivityLifeCycleCallback接口监听安卓应用内所有应用程序组件Activity的状态,把所有安卓应用打开的应用程序组件Activity添加到List内;
S106,自定义一个无障碍清理服务类来实现辅助功能;
S108,默认打开系统的可访问性开启ACCESSIBILITY_ENABLED、及设置自定义的无障碍清理服务类的ENABLED_ACCESSIBILITY_SERVICES值;
S110,在自定义的无障碍清理服务类内判断是否是打开无障碍清理服务功能的安卓应用,如果是,则开始计时并用Handler发送一个消息;
S112,在达到设置的退出时长界限时,如果期间内又拦截到用户进行了操作则需要重新计时,如果期间内,未拦截到用户的操作则自动退出对应的安卓应用。
根据本发明的具体实施例,在自动退出对应的安卓应用之后,所述方法还包括:
在handleMessage内判断安卓应用是否还有应用程序组件Activity包含在List内,如果还有则设置自动退出应用程序组件Activity。
采用本发明的基于安卓应用的自动清理方法,用户在安卓设备里自主选择开启此功能(无障碍清理服务),及设置无操作自动退出安卓应用的固定时间(退出时长界限),根据用户设置情况获取用户设置相关信息,然后在达到用户设置的固定时间时通过无障碍清理服务的事件类型来判断用户是否在对安卓应用进行操作,未操作就退出,操作则重新计时。
采用本发明的基于安卓应用的自动清理方法,用户可以根据自己喜好设置是否开启及无操作自动退出安卓应用的固定时间,可以更加人性化自动帮用户释放内存空间,解决了安卓设备持续使用一段时间出现卡顿、内存不足的问题,提高用户使用体验感。
根据本发明的实施例,无障碍清理服务类的ENABLED_ACCESSIBILITY_SERVICES值,具体包括:
用户是否在安卓应用内开启无障碍清理服务功能;
设置的自动退出时长界限;
根据配置文件中设置响应的无障碍清理服务的事件类型进行拦截。
根据本发明的实施例,在达到设置的退出时长界限之前,所述方法还包括:
构建退出时长界限预测模型;
创建样本数据库,并基于样本数据库中的样本数据对退出时长界限预测模型训练,得到优化后的退出时长界限预测模型;
获取当前用户使用安卓应用的历史数据信息;
将历史数据信息输入退出时长界限预测模型,输出预测的退出时长界限。
可以理解,基于每个用户的使用习惯,则对应的退出时长界限也会不同,例如有的用户基于自己的工作或生活需要,则需要更长的退出时长界限,有的用户则需要较短的退出时长界限。本发明则通过构建时长周期预测模型,并基于当前用户的历史数据信息,分析出与当前用户想适配的退出时长界限。
根据本发明的实施例,在输出预测的退出时长界限之后,所述方法还包括:
获取其他用户的安卓应用使用信息,其他用户的安卓应用使用信息至少包括使用安卓应用的数据信息和环境信息,以及实际退出时长界限;
获取当前用户使用安卓应用的环境信息,并进行特征计算,得到第一特征值;
对其他用户使用安卓应用的环境信息进行特征计算,得到第二特征值;
将当前用户的第一特征值与其他用户的第二特征值进行差异度计算,得到特征差异值;
将特征差异值小于第一预设阈值的其他用户的安卓应用使用信息加入修正数据库;
基于修正数据库中每个其他用户的安卓应用使用信息,将使用安卓应用的数据信息通过退出时长界限预测模型进行预测,得到预测退出时长界限;
基于修正数据库中每个其他用户的安卓应用使用信息,将对应的实际退出时长界限减去对应的预测退出时长界限,得到周期差值;
对修正数据库中多个其他用户的周期差值进行平均化计算,得到周期修正值;
在预测的退出时长界限基础上,加上周期修正值,得到修正后的退出时长界限。
需要说明的是,基于多方面因素的影响,退出时长界限预测模型预测的退出时长界限可能与实际退出时长界限具有一定的差异性。本发明则基于其他用户的安卓应用使用信息,并结合时长周期预测模型,计算出模型预测周期值与实际设定周期值之间的差异,进而基于差异对模型预测的退出时长界限进行修正,从而得到更加适配用户的退出时长界限。
优选的,环境信息可以包括使用场合、使用地理位置、使用时间段等,但不限于此。可以理解,环境信息可能会影响用户对退出时长界限的设置。例如在沿海地区,人们的工作或生活节奏较快,则会对安卓应用的使用更加频繁,为了更有效地释放内存,提升安卓设备的流畅度,则需要设置较短的退出时长界限。
优选的,使用安卓应用的数据信息可以包括用户对安卓应用的操作数据,如开启、关闭、打开安卓应用的某个功能模块等,但不限于此。基于使用安卓应用的数据信息可以分析出用户对安卓应用的使用习惯,进而经由模型可以预测出退出时长界限。
根据本发明的实施例,把所有安卓应用打开的应用程序组件Activity添加到List之后,所述方法还包括:
获取当前时刻对第一安卓应用的第一操作;
计算List内所有应用程序组件Activity与当前对第一安卓应用的第一操作之间的第一相似度;
判断第一相似度是否大于第二预设阈值,如果是,则将对应应用程序组件Activity的第三安卓应用暂时中止无障碍清理服务功能,直至下一个退出时长界限开启无障碍清理服务功能;
在下一时刻获取对第二安卓应用的第二操作,且下一时刻与当前时刻之间的时差小于退出时长界限;
计算List内所有应用程序组件Activity与当前对第二安卓应用的第二操作之间的第二相似度;
判断第二相似度是否大于第二预设阈值,如果是,则将对应应用程序组件Activity的第四安卓应用暂时中止无障碍清理服务功能,直至下一个退出时长界限开启无障碍清理服务功能,同时恢复第三安卓应用的无障碍清理服务功能。
需要说明的是,List内包括多个应用程序组件Activity,且多个应用程序组件Activity分别对应多个安卓应用。用户对某个安卓应用进行操作时,则有可能需要对相似的其他安卓应用进行关联操作,此时为了方便用户进行关联操作,则暂时中止相似的其他安卓应用的无障碍清理服务功能。
可以理解,在同一个退出时长界限内,用户可能会进行多个操作,则应该按照用户最新的操作进行相似的安卓应用暂时中止无障碍清理服务功能,并对先前操作相似的安卓应用进行无障碍清理服务功能的恢复。
根据本发明的实施例,所述方法还包括:
预设退出时长界限的更新周期T;
在当前的更新周期T内,记录用户的人为操作信息并加入更新数据库,其中人为操作信息包括:
由无障碍清理服务基于原始的退出时长界限t1退出对应的安卓应用之后,经过时间段t2后,由用户又重新打开了对应的安卓应用,则记录此次用户的人为操作信息,且此次人为操作信息包括上次对安卓应用的操作时间节点到重新打开安卓应用的时间节点之间的操作时间间隔t3= t1+ t2;
如果在原始的退出时长界限t1内,用户手动关闭了对应的安卓应用,记录此次用户的人为操作信息,且此次人为操作信息包括上次对安卓应用的操作时间节点到关闭安卓应用时间节点之间的操作时间间隔t4;
基于更新数据库的人为操作信息,通过预设的更新算法计算得到更新后的退出时长界限,并将更新的退出时长界限作为下一个更新周期T的退出时长界限。
需要说明的是,操作时间间隔t3大于原始的退出时长界限t1,操作时间间隔t4小于原始的退出时长界限t1。本发明对每个更新周期T内的人为操作信息进行采集,并通过预设的更新算法计算出下一个更新周期T的退出时长界限,进而基于人为操作信息实现动态更新退出时长界限,迎合用户在不同时间段的行为,自适应设定出适配的退出时长界限。
可以理解,频繁调整退出时长界限也会占用安卓设备的计算资源,因此,更新周期T不能过小,优选的,更新周期T远大于退出时长界限。
可以理解,更新数据库存储每个更新周期T内的数据信息,且并随着更新周期T的变化而进行数据信息更替。
根据本发明的实施例,基于更新数据库的人为操作信息,通过预设的更新算法计算得到更新后的退出时长界限,具体包括:
将更新数据库中每个人为操作信息的操作时间间隔与其他人为操作信息的操作时间间隔逐一作差计算,得到多个间隔差值;
判断每个间隔差值是否大于第三预设阈值,如果是,则标记前者人为操作信息的操作时间间隔为疑似离散间隔;
待更新数据库中所有人为操作信息的操作时间间隔均完成两两作差比对后,统计每个人为操作信息的操作时间间隔被标记为疑似离散间隔的总次数;
判断每个人为操作信息的操作时间间隔被标记为疑似离散间隔的总次数是否大于第四预设阈值,如果是,则标记对应人为操作信息的操作时间间隔为离散间隔;
将标记为离散间隔的人为操作信息从更新数据库中剔除;
对更新数据库中保留下的所有人为操作信息的操作时间间隔进行平均化计算,得到操作时间间隔平均值;
将操作时间间隔平均值作为更新后的退出时长界限。
需要说明的是,本发明通过更新数据库中的所有人为操作信息的操作时间间隔进行两两比对作差分析,从而剔除离散度较大的操作时间间隔,也就是与其他操作时间间隔差别较大的操作时间间隔,以避免这些离散间隔对后期退出时长界限更新计算的影响;最后对保留下的操作时间间隔进行平均值计算,将平均值作为更新后的退出时长界限,以贴合用户最近时间内对退出时长界限的需求度,进一步提升了用户的体验感。
图2示出了本发明一种基于安卓应用的自动清理系统的框图。
如图2所示,本发明第二方面还提出一种基于安卓应用的自动清理系统2,包括存储器21和处理器22,所述存储器中包括一种基于安卓应用的自动清理方法程序,所述基于安卓应用的自动清理方法程序被所述处理器执行时实现如下步骤:
在应用清单文件添加声明,申请无障碍清理服务的权限及在元数据meta-data里添加配置文件;
在需要使用无障碍清理服务功能的安卓应用内注册实现ActivityLifeCycleCallback接口,通过ActivityLifeCycleCallback接口监听安卓应用内所有应用程序组件Activity的状态,把所有安卓应用打开的应用程序组件Activity添加到List内;
自定义一个无障碍清理服务类来实现辅助功能;
默认打开系统的可访问性开启ACCESSIBILITY_ENABLED、及设置自定义的无障碍清理服务类的ENABLED_ACCESSIBILITY_SERVICES值;
在自定义的无障碍清理服务类内判断是否是打开无障碍清理服务功能的安卓应用,如果是,则开始计时并用Handler发送一个消息;
在达到设置的退出时长界限时,如果期间内又拦截到用户进行了操作则需要重新计时,如果期间内,未拦截到用户的操作则自动退出对应的安卓应用。
根据本发明的实施例,所述基于安卓应用的自动清理方法程序被所述处理器执行时还实现如下步骤:
预设退出时长界限的更新周期T;
在当前的更新周期T内,记录用户的人为操作信息并加入更新数据库,其中人为操作信息包括:
由无障碍清理服务基于原始的退出时长界限t1退出对应的安卓应用之后,经过时间段t2后,由用户又重新打开了对应的安卓应用,则记录此次用户的人为操作信息,且此次人为操作信息包括上次对安卓应用的操作时间节点到重新打开安卓应用的时间节点之间的操作时间间隔t3= t1+ t2;
如果在原始的退出时长界限t1内,用户手动关闭了对应的安卓应用,记录此次用户的人为操作信息,且此次人为操作信息包括上次对安卓应用的操作时间节点到关闭安卓应用时间节点之间的操作时间间隔t4;
基于更新数据库的人为操作信息,通过预设的更新算法计算得到更新后的退出时长界限,并将更新的退出时长界限作为下一个更新周期T的退出时长界限。
本发明第三方面还提出一种计算机可读存储介质,所述计算机可读存储介质中包括一种基于安卓应用的自动清理方法程序,所述基于安卓应用的自动清理方法程序被处理器执行时,实现如上述的一种基于安卓应用的自动清理方法的步骤。
本发明提出的一种基于安卓应用的自动清理方法、系统和可读存储介质,使得用户可以根据自己喜好设置是否开启及无操作自动退出安卓应用的固定时间,更加人性化自动帮用户释放内存空间,解决了安卓设备持续使用一段时间出现卡顿、内存不足的问题,提高用户使用体验感。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种基于安卓应用的自动清理方法,其特征在于,所述方法包括:
在应用清单文件添加声明,申请无障碍清理服务的权限及在元数据meta-data里添加配置文件;
在需要使用无障碍清理服务功能的安卓应用内注册实现ActivityLifeCycleCallback接口,通过ActivityLifeCycleCallback接口监听安卓应用内所有应用程序组件Activity的状态,把所有安卓应用打开的应用程序组件Activity添加到List内;
自定义一个无障碍清理服务类来实现辅助功能;
默认打开系统的可访问性开启ACCESSIBILITY_ENABLED、及设置自定义的无障碍清理服务类的ENABLED_ACCESSIBILITY_SERVICES值;
在自定义的无障碍清理服务类内判断是否是打开无障碍清理服务功能的安卓应用,如果是,则开始计时并用Handler发送一个消息;
在达到设置的退出时长界限时,如果期间内又拦截到用户进行了操作则需要重新计时,如果期间内,未拦截到用户的操作则自动退出对应的安卓应用。
2.根据权利要求1所述的一种基于安卓应用的自动清理方法,其特征在于,无障碍清理服务类的ENABLED_ACCESSIBILITY_SERVICES值,具体包括:
用户是否在安卓应用内开启无障碍清理服务功能;
设置的自动退出时长界限;
根据配置文件中设置响应的无障碍清理服务的事件类型进行拦截。
3.根据权利要求1所述的一种基于安卓应用的自动清理方法,其特征在于,在达到设置的退出时长界限之前,所述方法还包括:
构建退出时长界限预测模型;
创建样本数据库,并基于样本数据库中的样本数据对退出时长界限预测模型训练,得到优化后的退出时长界限预测模型;
获取当前用户使用安卓应用的历史数据信息;
将历史数据信息输入退出时长界限预测模型,输出预测的退出时长界限。
4.根据权利要求3所述的一种基于安卓应用的自动清理方法,其特征在于,在输出预测的退出时长界限之后,所述方法还包括:
获取其他用户的安卓应用使用信息,其他用户的安卓应用使用信息至少包括使用安卓应用的数据信息和环境信息,以及实际退出时长界限;
获取当前用户使用安卓应用的环境信息,并进行特征计算,得到第一特征值;
对其他用户使用安卓应用的环境信息进行特征计算,得到第二特征值;
将当前用户的第一特征值与其他用户的第二特征值进行差异度计算,得到特征差异值;
将特征差异值小于第一预设阈值的其他用户的安卓应用使用信息加入修正数据库;
基于修正数据库中每个其他用户的安卓应用使用信息,将使用安卓应用的数据信息通过退出时长界限预测模型进行预测,得到预测退出时长界限;
基于修正数据库中每个其他用户的安卓应用使用信息,将对应的实际退出时长界限减去对应的预测退出时长界限,得到周期差值;
对修正数据库中多个其他用户的周期差值进行平均化计算,得到周期修正值;
在预测的退出时长界限基础上,加上周期修正值,得到修正后的退出时长界限。
5.根据权利要求1所述的一种基于安卓应用的自动清理方法,其特征在于,把所有安卓应用打开的应用程序组件Activity添加到List之后,所述方法还包括:
获取当前时刻对第一安卓应用的第一操作;
计算List内所有应用程序组件Activity与当前对第一安卓应用的第一操作之间的第一相似度;
判断第一相似度是否大于第二预设阈值,如果是,则将对应应用程序组件Activity的第三安卓应用暂时中止无障碍清理服务功能,直至下一个退出时长界限开启无障碍清理服务功能;
在下一时刻获取对第二安卓应用的第二操作,且下一时刻与当前时刻之间的时差小于退出时长界限;
计算List内所有应用程序组件Activity与当前对第二安卓应用的第二操作之间的第二相似度;
判断第二相似度是否大于第二预设阈值,如果是,则将对应应用程序组件Activity的第四安卓应用暂时中止无障碍清理服务功能,直至下一个退出时长界限开启无障碍清理服务功能,同时恢复第三安卓应用的无障碍清理服务功能。
6.根据权利要求1所述的一种基于安卓应用的自动清理方法,其特征在于,所述方法还包括:
预设退出时长界限的更新周期T;
在当前的更新周期T内,记录用户的人为操作信息并加入更新数据库,其中人为操作信息包括:
由无障碍清理服务基于原始的退出时长界限t1退出对应的安卓应用之后,经过时间段t2后,由用户又重新打开了对应的安卓应用,则记录此次用户的人为操作信息,且此次人为操作信息包括上次对安卓应用的操作时间节点到重新打开安卓应用的时间节点之间的操作时间间隔t3= t1+ t2;
如果在原始的退出时长界限t1内,用户手动关闭了对应的安卓应用,记录此次用户的人为操作信息,且此次人为操作信息包括上次对安卓应用的操作时间节点到关闭安卓应用时间节点之间的操作时间间隔t4;
基于更新数据库的人为操作信息,通过预设的更新算法计算得到更新后的退出时长界限,并将更新的退出时长界限作为下一个更新周期T的退出时长界限。
7.根据权利要求6所述的一种基于安卓应用的自动清理方法,其特征在于,基于更新数据库的人为操作信息,通过预设的更新算法计算得到更新后的退出时长界限,具体包括:
将更新数据库中每个人为操作信息的操作时间间隔与其他人为操作信息的操作时间间隔逐一作差计算,得到多个间隔差值;
判断每个间隔差值是否大于第三预设阈值,如果是,则标记前者人为操作信息的操作时间间隔为疑似离散间隔;
待更新数据库中所有人为操作信息的操作时间间隔均完成两两作差比对后,统计每个人为操作信息的操作时间间隔被标记为疑似离散间隔的总次数;
判断每个人为操作信息的操作时间间隔被标记为疑似离散间隔的总次数是否大于第四预设阈值,如果是,则标记对应人为操作信息的操作时间间隔为离散间隔;
将标记为离散间隔的人为操作信息从更新数据库中剔除;
对更新数据库中保留下的所有人为操作信息的操作时间间隔进行平均化计算,得到操作时间间隔平均值;
将操作时间间隔平均值作为更新后的退出时长界限。
8.一种基于安卓应用的自动清理系统,其特征在于,包括存储器和处理器,所述存储器中包括一种基于安卓应用的自动清理方法程序,所述基于安卓应用的自动清理方法程序被所述处理器执行时实现如下步骤:
在应用清单文件添加声明,申请无障碍清理服务的权限及在元数据meta-data里添加配置文件;
在需要使用无障碍清理服务功能的安卓应用内注册实现ActivityLifeCycleCallback接口,通过ActivityLifeCycleCallback接口监听安卓应用内所有应用程序组件Activity的状态,把所有安卓应用打开的应用程序组件Activity添加到List内;
自定义一个无障碍清理服务类来实现辅助功能;
默认打开系统的可访问性开启ACCESSIBILITY_ENABLED、及设置自定义的无障碍清理服务类的ENABLED_ACCESSIBILITY_SERVICES值;
在自定义的无障碍清理服务类内判断是否是打开无障碍清理服务功能的安卓应用,如果是,则开始计时并用Handler发送一个消息;
在达到设置的退出时长界限时,如果期间内又拦截到用户进行了操作则需要重新计时,如果期间内,未拦截到用户的操作则自动退出对应的安卓应用。
9.根据权利要求8所述的一种基于安卓应用的自动清理系统,其特征在于,所述基于安卓应用的自动清理方法程序被所述处理器执行时还实现如下步骤:
预设退出时长界限的更新周期T;
在当前的更新周期T内,记录用户的人为操作信息并加入更新数据库,其中人为操作信息包括:
由无障碍清理服务基于原始的退出时长界限t1退出对应的安卓应用之后,经过时间段t2后,由用户又重新打开了对应的安卓应用,则记录此次用户的人为操作信息,且此次人为操作信息包括上次对安卓应用的操作时间节点到重新打开安卓应用的时间节点之间的操作时间间隔t3= t1+ t2;
如果在原始的退出时长界限t1内,用户手动关闭了对应的安卓应用,记录此次用户的人为操作信息,且此次人为操作信息包括上次对安卓应用的操作时间节点到关闭安卓应用时间节点之间的操作时间间隔t4;
基于更新数据库的人为操作信息,通过预设的更新算法计算得到更新后的退出时长界限,并将更新的退出时长界限作为下一个更新周期T的退出时长界限。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中包括一种基于安卓应用的自动清理方法程序,所述基于安卓应用的自动清理方法程序被处理器执行时,实现如权利要求1至7中任一项所述的一种基于安卓应用的自动清理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211367004.4A CN115421820B (zh) | 2022-11-03 | 2022-11-03 | 一种基于安卓应用的自动清理方法、系统和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211367004.4A CN115421820B (zh) | 2022-11-03 | 2022-11-03 | 一种基于安卓应用的自动清理方法、系统和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115421820A CN115421820A (zh) | 2022-12-02 |
CN115421820B true CN115421820B (zh) | 2023-02-21 |
Family
ID=84207881
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211367004.4A Active CN115421820B (zh) | 2022-11-03 | 2022-11-03 | 一种基于安卓应用的自动清理方法、系统和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115421820B (zh) |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8806470B2 (en) * | 2010-09-29 | 2014-08-12 | Mitsubishi Electric Corporation | System, method, and apparatus for software maintenance of sensor and control systems |
US10209956B2 (en) * | 2014-10-09 | 2019-02-19 | Splunk Inc. | Automatic event group actions |
JPWO2017056194A1 (ja) * | 2015-09-29 | 2017-10-05 | 株式会社東芝 | 情報機器または情報通信端末および、情報処理方法 |
CN105700922A (zh) * | 2016-01-07 | 2016-06-22 | 广东欧珀移动通信有限公司 | 一种充电时自动清理内存的方法、装置及移动终端 |
US10606916B2 (en) * | 2016-06-10 | 2020-03-31 | OneTrust, LLC | Data processing user interface monitoring systems and related methods |
CN106775857A (zh) * | 2016-12-07 | 2017-05-31 | 珠海格力电器股份有限公司 | 一种服务器的组件热删除、热增加和热替换方法及装置 |
CN107168787A (zh) * | 2017-07-03 | 2017-09-15 | 赵桂银 | 一种移动终端运行性能改善方法与装置 |
CN108427563A (zh) * | 2018-03-20 | 2018-08-21 | 苏州汉能网络科技有限公司 | 一种软件自动清除系统 |
CN113407924B (zh) * | 2021-06-01 | 2022-11-11 | 厦门市美亚柏科信息股份有限公司 | 基于无障碍服务的打开应用锁方法、终端设备及存储介质 |
CN115050365A (zh) * | 2022-06-29 | 2022-09-13 | 扬州航盛科技有限公司 | 一种车载多模交互方法 |
-
2022
- 2022-11-03 CN CN202211367004.4A patent/CN115421820B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115421820A (zh) | 2022-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107678803B (zh) | 应用管控方法、装置、存储介质及电子设备 | |
CN108134691B (zh) | 模型构建方法、网络资源预加载方法、装置、介质及终端 | |
CN103404193B (zh) | 调校数据传输以优化为通过无线网络的传输建立的连接 | |
CN108156265B (zh) | 一种应用程序控制方法及移动设备 | |
CN107832132B (zh) | 应用控制方法、装置、存储介质及电子设备 | |
CN108228325B (zh) | 应用管理方法和装置、电子设备、计算机存储介质 | |
CN107567083B (zh) | 进行省电优化处理的方法和装置 | |
EP3231199B1 (en) | Notifications on mobile devices | |
CN107632697B (zh) | 应用程序的处理方法、装置、存储介质及电子设备 | |
CN106664254A (zh) | 优化移动网络中的网络流量管理 | |
Lee et al. | Context-aware application scheduling in mobile systems: What will users do and not do next? | |
CN107943583A (zh) | 应用程序的处理方法、装置、存储介质及电子设备 | |
CN103714133A (zh) | 数据运维管理方法及装置 | |
EP3476103A1 (en) | Method, apparatus and machine readable medium for measuring user availability or receptiveness to notifications | |
CN105611074B (zh) | 一种根据闹钟时间优化推送信息时间的方法及系统 | |
Pradhan et al. | Understanding and managing notifications | |
CN107748697B (zh) | 应用关闭方法、装置、存储介质及电子设备 | |
WO2019062462A1 (zh) | 应用控制方法、装置、存储介质以及电子设备 | |
CN115421820B (zh) | 一种基于安卓应用的自动清理方法、系统和可读存储介质 | |
Lee et al. | CAS: Context-aware background application scheduling in interactive mobile systems | |
CN108197714A (zh) | 利用机器学习模型进行工作模式判决的方法及装置 | |
CN110737322A (zh) | 信息处理方法及电子设备 | |
CN110796591A (zh) | 一种gpu卡的使用方法及相关设备 | |
CN110471769A (zh) | 一种虚拟机的资源管理方法及装置 | |
CN113050783B (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 |