今天中的一個story突然提到了系統設定中的清理資料,後來開始思考究竟系統的應用的這個清理功能,究竟會清理那些資料。
於是開始研究,以com.mx.browser為例,思路大概為首先為/data/data/com.mx.browser下的每一個檔案夾下建立一個標誌檔案,這裡為1.txt,然後執行清理資料操作,最後對比結果。
首先,進行清楚資料之前的的各個檔案夾的情況。
/data/data/com.mx.browser # lslibfilesdatabasesshared_prefsapp_thumbnailscacheapp_webIconsapp_appcacheapp_databasesapp_geolocation
為每個檔案夾下建立一個標誌(同時驗證是否刪除檔案夾的情況)
/data/data/com.mx.browser # touch lib/1.txt/data/data/com.mx.browser # touch files/1.txt/data/data/com.mx.browser # touch databases/1.txt/data/data/com.mx.browser # touch shared_prefs/1.txt/data/data/com.mx.browser # touch app_thumbnails/1.txt/data/data/com.mx.browser # touch cache/1.txt/data/data/com.mx.browser # touch app_webIcons/1.txt/data/data/com.mx.browser # touch app_appcache/1.txt/data/data/com.mx.browser # touch app_databases/1.txt/data/data/com.mx.browser # touch app_geolocation/1.txt
執行清理資料操作。
查看執行清理資料操作後的結果。
/data/data/com.mx.browser # lslib/data/data/com.mx.browser #
查看lib情況
/data/data/com.mx.browser # cd lib//data/data/com.mx.browser/lib # ls1.txt/data/data/com.mx.browser/lib #
總上所述,發現系統中的設定,應用中的清理資料,會清理掉除去lib檔案夾(含內部檔案)的檔案及檔案夾。
p.s./sdcard/Android/data/這個目錄也是和包名相關的,但是系統中的清理資料不會清理掉這個目錄中的相關資訊。