From 24c51deaf9776131f5946ab5e57cc723311be1b4 Mon Sep 17 00:00:00 2001 From: Andreas Shimokawa Date: Mon, 23 May 2016 23:15:07 +0200 Subject: [PATCH] Pebble: also delete other files from cache when deleting .pbw --- .../activities/AppManagerActivity.java | 21 +++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/AppManagerActivity.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/AppManagerActivity.java index de5147e99..9c0fd166d 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/AppManagerActivity.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/AppManagerActivity.java @@ -212,16 +212,25 @@ public class AppManagerActivity extends GBActivity { switch (item.getItemId()) { case R.id.appmanager_health_deactivate: case R.id.appmanager_app_delete_cache: - File cachedFile = null; - boolean deleteSuccess = true; + + + String baseName; try { - cachedFile = new File(FileUtils.getExternalFilesDir().getPath() + "/pbw-cache/" + selectedApp.getUUID() + ".pbw"); - deleteSuccess = cachedFile.delete(); + baseName = FileUtils.getExternalFilesDir().getPath() + "/pbw-cache/" + selectedApp.getUUID(); } catch (IOException e) { LOG.warn("could not get external dir while trying to access pbw cache."); + return true; } - if (!deleteSuccess) { - LOG.warn("could not delete file from pbw cache: " + cachedFile.toString()); + + String[] suffixToDelete = new String[]{".pbw", ".json", "_config.js"}; + + for (String suffix : suffixToDelete) { + File fileToDelete = new File(baseName + suffix); + if (!fileToDelete.delete()) { + LOG.warn("could not delete file from pbw cache: " + fileToDelete.toString()); + } else { + LOG.info("deleted file: " + fileToDelete.toString()); + } } // fall through case R.id.appmanager_app_delete: