From f15f55c3f645cbba3f75fadae8f97853102d7929 Mon Sep 17 00:00:00 2001 From: staccatomamba Date: Wed, 1 Nov 2017 17:01:32 +0100 Subject: [PATCH] Better temp file management --- .../ownchat/page/chat/ChatPresenter.java | 3 ++- .../beyondsoft/ownchat/utils/Constants.java | 2 ++ .../beyondsoft/ownchat/utils/FileUtils.java | 25 +++++++++++++++++++ 3 files changed, 29 insertions(+), 1 deletion(-) diff --git a/BeWoPlanerChat/bewoplaner-chat-android/app/src/main/java/de/beyondsoft/ownchat/page/chat/ChatPresenter.java b/BeWoPlanerChat/bewoplaner-chat-android/app/src/main/java/de/beyondsoft/ownchat/page/chat/ChatPresenter.java index 33b4e09..b6af0c1 100644 --- a/BeWoPlanerChat/bewoplaner-chat-android/app/src/main/java/de/beyondsoft/ownchat/page/chat/ChatPresenter.java +++ b/BeWoPlanerChat/bewoplaner-chat-android/app/src/main/java/de/beyondsoft/ownchat/page/chat/ChatPresenter.java @@ -427,7 +427,8 @@ public class ChatPresenter extends MVPAbstractPresenter implements Cha return; } - String tmpFileLocation = mContext.getExternalFilesDir(null) + "/tmp_" + file.getName(); + String tmpFileLocation = FileUtils.getTmpFilesDir(mContext) + "/tmp_" + file.getName(); + FileUtils.clearTmpFilesDir(mContext); String[] split = file.getAbsolutePath().split("/"); diff --git a/BeWoPlanerChat/bewoplaner-chat-android/app/src/main/java/de/beyondsoft/ownchat/utils/Constants.java b/BeWoPlanerChat/bewoplaner-chat-android/app/src/main/java/de/beyondsoft/ownchat/utils/Constants.java index f8cedf0..f2ae2f1 100644 --- a/BeWoPlanerChat/bewoplaner-chat-android/app/src/main/java/de/beyondsoft/ownchat/utils/Constants.java +++ b/BeWoPlanerChat/bewoplaner-chat-android/app/src/main/java/de/beyondsoft/ownchat/utils/Constants.java @@ -30,4 +30,6 @@ public interface Constants { String MIME_TYPE_JPEG = "image/jpeg"; String MIME_TYPE_PNG = "image/png"; String MIME_TYPE_GIF = "image/gif"; + + String TMP_FILE_DIR = "tmp_files"; } \ No newline at end of file diff --git a/BeWoPlanerChat/bewoplaner-chat-android/app/src/main/java/de/beyondsoft/ownchat/utils/FileUtils.java b/BeWoPlanerChat/bewoplaner-chat-android/app/src/main/java/de/beyondsoft/ownchat/utils/FileUtils.java index a09453e..273557a 100644 --- a/BeWoPlanerChat/bewoplaner-chat-android/app/src/main/java/de/beyondsoft/ownchat/utils/FileUtils.java +++ b/BeWoPlanerChat/bewoplaner-chat-android/app/src/main/java/de/beyondsoft/ownchat/utils/FileUtils.java @@ -24,6 +24,7 @@ import android.graphics.Bitmap; import android.net.Uri; import android.os.Build; import android.os.Environment; +import android.provider.ContactsContract; import android.provider.DocumentsContract; import android.provider.MediaStore; import android.util.Log; @@ -563,4 +564,28 @@ public class FileUtils { return extension; } + + // TODO: a method that creates a tmp_file directory, and methods to clear it and store files in there + + public static String getTmpFilesDir(Context context) { + String dirName = context.getExternalFilesDir(null) + "/" + Constants.TMP_FILE_DIR; + + boolean mkdir = new File(dirName).mkdir(); + + return dirName; + } + + public static boolean clearTmpFilesDir(Context context) { + File dir = new File(getTmpFilesDir(context)); + + if(!dir.exists()) { + return true; + } + + for(File f : dir.listFiles()) { + boolean delete = f.delete(); + } + + return true; + } } \ No newline at end of file