Cleanup favicons

This commit is contained in:
M66B 2020-10-19 12:47:51 +02:00
parent d4c9269886
commit a12f3068cb
2 changed files with 20 additions and 0 deletions

View File

@ -101,6 +101,7 @@ public class ContactInfo {
private static final int FAVICON_READ_BYTES = 2048;
private static final long CACHE_CONTACT_DURATION = 2 * 60 * 1000L; // milliseconds
private static final long CACHE_GRAVATAR_DURATION = 2 * 60 * 60 * 1000L; // milliseconds
private static final long CACHE_FAVICON_DURATION = 2 * 7 * 24 * 60 * 60 * 1000L; // milliseconds
private ContactInfo() {
}
@ -137,6 +138,21 @@ public class ContactInfo {
return (new Date().getTime() - time > CACHE_CONTACT_DURATION);
}
static void cleanup(Context context) {
long now = new Date().getTime();
// Favicons
Log.i("Cleanup favicons");
File[] favicons = new File(context.getCacheDir(), "favicons").listFiles();
if (favicons != null)
for (File file : favicons)
if (file.lastModified() + CACHE_FAVICON_DURATION < now) {
Log.i("Deleting " + file);
if (!file.delete())
Log.w("Error deleting " + file);
}
}
static void clearCache(Context context) {
clearCache(context, true);
}

View File

@ -248,6 +248,10 @@ public class WorkerCleanup extends Worker {
}
}
// Cleanup contact info
if (!manual)
ContactInfo.cleanup(context);
Log.i("Cleanup FTS=" + fts);
if (fts) {
int deleted = 0;