清理应用程序缓存
来源:互联网 发布:javascript 预编译 编辑:程序博客网 时间:2024/05/01 15:36
1、获取应用程序缓存信息
2、清理缓存(也可以不用步骤1,直接清理,步骤1只是为了知道哪些程序有缓存)
1)
Method getPackageSizeInfo = pm.getClass().getMethod("getPackageSizeInfo", String.class, IPackageStatsObserver.class); List<ApplicationInfo> application = new ArrayList();application = pm.getInstalledApplications(0);for(int i=0;i<application.size();i++){ApplicationInfo app = application.get(i);getPackageSizeInfo.invoke(pm, app.packageName, new IPackageStatsObserver.Stub() { @Override public void onGetStatsCompleted(PackageStats pStats, boolean succeeded) throws RemoteException { if(pStats.cacheSize != 0){cacheSize += pStats.cacheSize;Log.e(TAG, "cacheSize: " + pStats.packageName + " ;" + pStats.cacheSize); }} });}
上面的方法 通过反射机制获取应用程序的缓存信息
2)
Method localMethod = pm.getClass().getMethod("freeStorageAndNotify", Long.TYPE,IPackageDataObserver.class);Long localLong = Long.valueOf(getEnvironmentSize() - 1L);Object[] arrayOfObject = new Object[2]; arrayOfObject[0] = localLong; localMethod.invoke(pm,localLong,new IPackageDataObserver.Stub() {@Overridepublic void onRemoveCompleted(String packageName,boolean succeeded) throws RemoteException {}});
同样通过反射,来清除缓存
private long getEnvironmentSize() { File dataFile = Environment.getDataDirectory(); if (dataFile == null) return 0; else { StatFs localStatFs = new StatFs(dataFile.getPath()); long l2 = localStatFs.getBlockSize(); return localStatFs.getBlockCount() * l2; } }
需要用到3个AIDL:
IPackageDataObserver.aidl
IPackageStatsObserver.aidl
PackageStats.aidl
- 清理应用程序缓存
- 清理应用程序缓存
- 清理app应用程序的缓存
- 获取应用程序缓存及一键清理
- 98利用反射清理应用程序的缓存以及清理所有应用程序的缓存
- 安卓开发之清理手机应用程序缓存
- 缓存清理
- 清理缓存
- 缓存清理
- 清理缓存
- 清理缓存
- 清理缓存
- 清理缓存
- 清理缓存
- 清理缓存
- 清理缓存
- 清理缓存
- android 获取其他应用程序的缓存大小以及清理应用缓存
- Python_使用easy_install工具源码
- 风琴式菜单
- Linux 内核剖析
- linux+httpd+svn搭建
- hdu4389-X mod f(x)-多校9-1010题解
- 清理应用程序缓存
- ActionContextCleanUp
- 编译提示: warning C4800: 'int' : forcing value to bool 'true' or 'false' (performance warning)
- js验证表单大全
- 做Java开发这一年
- 线段树 HDU 3874 necklace
- CRichEditCtrl GetLine 中文
- AJAX异步更改数据库
- Matrix大牛讲KMP算法