[发明专利]反射与aidl获取并清理缓存方法及系统有效
申请号: | 201711404839.1 | 申请日: | 2017-12-22 |
公开(公告)号: | CN109960666B | 公开(公告)日: | 2021-05-11 |
发明(设计)人: | 佟金龙;徐翰隆;王小丰;肖新光 | 申请(专利权)人: | 北京安天网络安全技术有限公司 |
主分类号: | G06F12/0891 | 分类号: | G06F12/0891;G06F8/20 |
代理公司: | 北京清亦华知识产权代理事务所(普通合伙) 11201 | 代理人: | 张润 |
地址: | 100190 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 反射 aidl 获取 清理 缓存 方法 系统 | ||
1.一种反射与aidl获取并清理缓存方法,其特征在于,包括以下步骤:
通过反射模块将包管理器封装成相应接口;
自定义一个包观察者类,回调获取每个包的大小信息;
创建包状态观察者对象与包大小观察者对象,以便所述反射模块调用;
将包状态观察者对象以aidl形式传入参数中,以便成功返回所有应用的包文件的缓存信息;
通过反射模块调用包管理器的接口间接调用隐藏api清理内存;
其中,所述通过反射模块将包管理器封装成相应接口,进一步包括:将field模块、Method模块、Class模块与android组件进行绑定,根据字节码文件名字暴力获取对象的函数接口,成员对象的值和设置成员对象的值,通过调用所述反射模块暴力获取私有api方法与java层进行交互。
2.根据权利要求1所述的反射与aidl获取并清理缓存方法,其特征在于,还包括:
通过调用反射模块构造隐藏私有方法,以将包状态观察者对象以aidl的形式传入。
3.根据权利要求1所述的反射与aidl获取并清理缓存方法,其特征在于,在将包状态观察者对象以aidl的形式传入之后,还包括:
传入一个long类型的最大值,以模拟手机系统设置里面的缓存清理功能。
4.根据权利要求1所述的反射与aidl获取并清理缓存方法,其特征在于,通过调用所述Method模块通过隐藏私有方法将所述包状态观察者对象以aidl形式传入参数中。
5.一种反射与aidl获取并清理缓存系统,其特征在于,包括:
封装模块,用于通过反射模块将包管理器封装成相应接口;
获取模块,用于自定义一个包观察者类,回调获取每个包的大小信息;
创建模块,用于创建包状态观察者对象与包大小观察者对象,以便所述反射模块调用;
传入模块,用于将包状态观察者对象以aidl形式传入参数中,以便成功返回所有应用的包文件的缓存信息;
清理模块,用于通过反射模块调用包管理器的接口间接调用隐藏api清理内存;
其中,所述封装模块用于将field模块、Method模块、Class模块与android组件进行绑定,根据字节码文件名字暴力获取对象的函数接口,成员对象的值和设置成员对象的值,通过调用所述反射模块暴力获取私有api方法与java层进行交互。
6.根据权利要求5所述的反射与aidl获取并清理缓存系统,其特征在于,所述清理模块还用于通过调用反射模块构造隐藏私有方法,以将包状态观察者对象以aidl的形式传入。
7.根据权利要求5所述的反射与aidl获取并清理缓存系统,其特征在于,在将包状态观察者对象以aidl的形式传入之后,所述清理模块还用于传入一个long类型的最大值,以模拟手机系统设置里面的缓存清理功能。
8.根据权利要求5所述的反射与aidl获取并清理缓存系统,其特征在于,所述传入模块用于通过调用所述Method模块通过隐藏私有方法将所述包状态观察者对象以aidl形式传入参数中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京安天网络安全技术有限公司,未经北京安天网络安全技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711404839.1/1.html,转载请声明来源钻瓜专利网。