Browse Source

增加文件创建时间显示

zk 1 year ago
parent
commit
81596439b5

+ 13 - 12
app/src/main/java/com/datarecovery/master/utils/FileUtil.java

@@ -1,13 +1,14 @@
 package com.datarecovery.master.utils;
 package com.datarecovery.master.utils;
 
 
 import android.content.Context;
 import android.content.Context;
-import android.database.Cursor;
 import android.net.Uri;
 import android.net.Uri;
-import android.provider.MediaStore;
 import android.text.format.Formatter;
 import android.text.format.Formatter;
 
 
+import androidx.documentfile.provider.DocumentFile;
+
 import com.atmob.common.runtime.ContextUtil;
 import com.atmob.common.runtime.ContextUtil;
 
 
+import java.io.File;
 import java.util.Locale;
 import java.util.Locale;
 
 
 public class FileUtil {
 public class FileUtil {
@@ -32,18 +33,18 @@ public class FileUtil {
         return split[split.length - 1].toUpperCase(Locale.getDefault());
         return split[split.length - 1].toUpperCase(Locale.getDefault());
     }
     }
 
 
-    public static long getFileCreationDate(Context context, Uri uri) {
-        String[] projection = new String[]{MediaStore.Images.ImageColumns.DATE_ADDED}; // 根据不同类型的文件选择合适的列名
-
-        try (Cursor cursor = context.getContentResolver().query(uri, projection, null, null, null)) {
-
-            if (cursor != null && cursor.moveToFirst()) {
-                int dateAddedColumnIndex = cursor.getColumnIndexOrThrow(projection[0]);
-
-                return cursor.getLong(dateAddedColumnIndex);
+    public static long getFileCreationDateFromUri(Context context, Uri uri, String path) {
+        DocumentFile documentFile = DocumentFile.fromSingleUri(context, uri);
+        if (documentFile != null && documentFile.exists()) {
+            return documentFile.lastModified();
+        } else {
+            if (path != null) {
+                File file = new File(path);
+                return file.lastModified();
+            } else {
+                return 0;
             }
             }
         }
         }
-        return 0;
     }
     }
 
 
 
 

+ 1 - 1
app/src/main/java/com/datarecovery/master/utils/ImageDeepDetector.java

@@ -570,7 +570,7 @@ public class ImageDeepDetector {
 
 
         public long getCreateTime() {
         public long getCreateTime() {
             if (createTime == 0 && uri != null) {
             if (createTime == 0 && uri != null) {
-                this.createTime = FileUtil.getFileCreationDate(ContextUtil.getContext(), uri);
+                this.createTime = FileUtil.getFileCreationDateFromUri(ContextUtil.getContext(), uri, path);
             }
             }
             return createTime;
             return createTime;
         }
         }