使用代码实现Android的清除数据的功能

清除数据
清除数据主要是清除用户配置,比如SharedPreferences、数据库等等,这些数据都是在程序运行过程中保存的用户配置信息,清除数据后,下次进入程序就和第一次进入程序时一样;



代码实现方法:/** * 清除应用缓存的用户数据,同时停止所有服务和Alarm定时task * String cmd = "pm clear " + packageName; * String cmd = "pm clear " + packageName+ " HERE"; * Runtime.getRuntime().exec(cmd) * @param packageName * @return */ public static Process clearAppUserData(String packageName) { Process p = execRuntimeProcess("pm clear " + packageName); if (p == null) { LogTag.log("Clear app data packageName:" + packageName + ", FAILED !"); } else { LogTag.log("Clear app data packageName:" + packageName + ", SUCCESS !"); } return p; }


public static Process execRuntimeProcess(String commond) { Process p = null; try { p = Runtime.getRuntime().exec(commond); } catch (IOException e) { LogTag.log("exec Runtime commond:" + commond + ", IOException" + e); e.printStackTrace(); } LogTag.log("exec Runtime commond:" + commond + ", Process:" + p); return p; } }




清除缓存

缓存是程序运行时的临时存储空间,它可以存放从网络下载的临时图片,从用户的角度出发清除缓存对用户并没有太大的影响,但是清除缓存后用户再次使用该APP时,由于本地缓存已经被清理,所有的数据需要重新从网络上获取,注意:为了在清除缓存的时候能够正常清除与应用相关的缓存,请将缓存文件存放在getCacheDir()或者 getExternalCacheDir()路径下。比如对微信清除缓存,则聊天记录、朋友圈缓存的用户头像、图片、文字等信息都会被清除掉,清除缓存后再次进入微信时你会发现消息记录被清空了,朋友圈的图片和用户头像需要加载一会才能正常显示。
一键清理
一键清理是系统级别的功能,它主要是杀后台进程,以达到释放内存的目的,但杀掉哪些进程和清理时设置的重要值阈值有关,重要值越大说明进程重要程度越低,如果在清理时某个进程的重要值大于该阈值,该进程就会被杀掉。比如微信等应用在后台,一件清理后会将微信和与之相关的服务都杀掉(有的服务做了特殊处理,杀不死!!!)。
【使用代码实现Android的清除数据的功能】






    推荐阅读