使用代碼實現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;
}
</pre><pre name="code" class="java"><pre name="code" class="java">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()路徑下。比如對微信清除緩存,則聊天記錄、朋友圈緩存的用戶頭像、圖片、文字等信息都會被清除掉,清除緩存後再次進入微信時你會發現消息記錄被清空了,朋友圈的圖片和用戶頭像需要加載一會才能正常顯示。

一鍵清理

一鍵清理是系統級別的功能,它主要是殺後臺進程,以達到釋放內存的目的,但殺掉哪些進程和清理時設置的重要值閾值有關,重要值越大說明進程重要程度越低,如果在清理時某個進程的重要值大於該閾值,該進程就會被殺掉。比如微信等應用在後臺,一件清理後會將微信和與之相關的服務都殺掉(有的服務做了特殊處理,殺不死!!!)。





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章