Aygıtta yüklü olan tüm üçüncü taraf uygulamaların uygulama önbelleğini programlı olarak temizleyebilen bir uygulama yazıyorum. Android 2,2Android uygulama önbelleğini nasıl temizleyebilirim?
public static void trimCache(Context myAppctx) {
Context context = myAppctx.createPackageContext("com.thirdparty.game",
Context.CONTEXT_INCLUDE_CO|Context.CONTEXT_IGNORE_SECURITY);
File cachDir = context.getCacheDir();
Log.v("Trim", "dir " + cachDir.getPath());
if (cachDir!= null && cachDir.isDirectory()) {
Log.v("Trim", "can read " + cachDir.canRead());
String[] fileNames = cachDir.list();
//Iterate for the fileName and delete
}
}
için kod parçası aşağıdadır Benim tezahür aşağıdaki izinlere sahip:
android.permission.CLEAR_APP_CACHE
android.permission.DELETE_CACHE_FILES
Şimdi problem olduğunu Önbellek dizininin adı yazdırılır, ancak cachDir.list()
dosyalarının listesi her zaman null değerini döndürür. Dosya listesi her zaman boş olduğundan önbellek dizinini silemiyorum.
Uygulama önbelleğini temizlemenin başka yolu var mı?
Bunun için rootlu bir cihaza ihtiyacınız yok mu? Doğru izin verilen –