很想知道扫描垃圾文件的时候扫描的哪些文件,以及逻辑是如何处理的,求解答,做毕业设计,希望指导一下!
1条回答 默认 最新
- lbcab 2016-05-07 14:35关注
android 扫描的垃圾文件其实就是每个应用程序的缓存, android应用程序有一个接口getCacheDir(), 它返回的路径就是 /data/data/包名/cache/路径。
所以手机卫士垃圾清理就是清理的是每个应用程序这个目录下的文件。逻辑步骤为:
1. 先获取手机中的所有应用程序,getPackageManager().getInstalledPackages(), 然后判断那些应用有缓存, 你可以参考android系统中setting的
源代码
2. 清理应用程序缓存, 调用packgeManager中的方法deleteApplicationCacheFiles,清理指定应用程序的缓存, 注意此方法是隐藏的, 需使用反射来获取:
Method method = PackageManager.class.getMethod("deleteApplicationCacheFiles", String.class, IPackageDataObserver.class);
method.invoke(pm, "包名(需要清理缓存的程序包名)"); //pm为PackageManager本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 3无用
悬赏问题
- ¥15 #MATLAB仿真#车辆换道路径规划
- ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
- ¥15 数据可视化Python
- ¥15 要给毕业设计添加扫码登录的功能!!有偿
- ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
- ¥15 微信公众号自制会员卡没有收款渠道啊
- ¥100 Jenkins自动化部署—悬赏100元
- ¥15 关于#python#的问题:求帮写python代码
- ¥20 MATLAB画图图形出现上下震荡的线条
- ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘