Better temp file management

This commit is contained in:
staccatomamba
2017-11-01 17:01:32 +01:00
parent 2fecb449f8
commit f15f55c3f6
3 changed files with 29 additions and 1 deletions

View File

@@ -427,7 +427,8 @@ public class ChatPresenter extends MVPAbstractPresenter<ChatView> 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("/");

View File

@@ -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";
}

View File

@@ -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;
}
}