Last Accessed Zeit von jeder Datei in Android

file.lastModified() gibt das zuletzt geänderte Datum zurück. Datei scheint nicht, irgendeine Methode zu haben, um lastAccessed Datum zu holen. Gibt es eine Möglichkeit, programmgesteuert das zuletzt zugelassene Datum / die Uhrzeit einer Datei in Android zu holen?

  • Facebook onCompleted Email java.lang.NullPointerException
  • Android Custom View zeigt solide schwarz nach dem Aufruf ungültig
  • Serialisierung eines SparseArray <T> mit GSON
  • Wie benutzt man Asynctask, um eine Fortschrittsleiste anzuzeigen, die heruntergezählt wird?
  • So stellen Sie die Textgröße der Textansicht dynamisch für verschiedene Bildschirme ein
  • Styling ein AppCompatButton in v21, um keinen Schatten- und Eckenradius von Null zu haben
  • Wie konvertiert man ein Android Library Project zu einem externen JAR?
  • XAPK Dateivalidierung zeigt in korrekten Daten an Information
  • ClassNotFoundException: Keine Klasse gefunden "android.os.PersistableBundle" Otto Android 5.0
  • Intermittierende Verbindung Zurücksetzen durch Peer-Fehler in Android Verbindung zu .NET REST Endpunkt
  • Wie legst du eine Grenze um eine ListView?
  • Keine generierte R.java-Datei in meinem Projekt
  • 4 Solutions collect form web for “Last Accessed Zeit von jeder Datei in Android”

    Sie können die letzte Zugriffszeit mit stat oder lstat . Die beiden Methoden android.system.Os.stat(String path) und android.system.Os.lstat(String path) wurden in Android 5.0 veröffentlicht. Bei früheren Android-Versionen müssen Sie Reflexion verwenden oder einen Befehl in einer Shell ausführen.

    Verwendung:

    Android 5.0+

     long lastAccessTime = Os.lstat(file.getAbsolutePath()).st_atime; 

    Verwenden von Reflexion vor Android 5.0

     Class<?> clazz = Class.forName("libcore.io.Libcore"); Field field = clazz.getDeclaredField("os"); if (!field.isAccessible()) { field.setAccessible(true); } Object os = field.get(null); Method method = os.getClass().getMethod("lstat", String.class); Object lstat = method.invoke(os, file.getAbsolutePath()); field = lstat.getClass().getDeclaredField("st_atime"); if (!field.isAccessible()) { field.setAccessible(true); } long lastAccessTime = field.getLong(lstat); 

    Hinweis:

    Ich glaube nicht, dass die letzte Zugriffszeit auf Android verwendet wird. Aus der java.nio Dokumentation:

    Wenn die Dateisystemimplementierung keinen Zeitstempel zur Angabe der Zeit des letzten Zugriffs unterstützt, gibt diese Methode einen implementierungsspezifischen Standardwert zurück, typischerweise die zuletzt modifizierte Zeit oder eine FileTime, die die Epoche repräsentiert (1970-01-01T00: 00: 00Z).

    Ich habe die letzte Zugriffszeit mit dem folgenden Befehl getestet:

     touch -a [PATH] 

    Dies änderte die letzte Zugriffszeit, als ich den Befehl als Root-Benutzer lief. Allerdings denke ich nicht, dass die zuletzt zugegriffene Zeit auf Android aktualisiert / verwendet wird.

    Ich hatte das gleiche Problem und ich stieß auf diese Datei I / O (mit NIO.2)

    Es bietet Last Access Time-Eigenschaft, die in JDK 7 Release I / O-Mechanismus eingeführt wurde.

     Path file = ...; BasicFileAttributes attr = Files.readAttributes(file, BasicFileAttributes.class); System.out.println("creationTime: " + attr.creationTime()); System.out.println("lastAccessTime: " + attr.lastAccessTime()); System.out.println("lastModifiedTime: " + attr.lastModifiedTime()); 

    Weitere Informationen finden Sie hier .

    Versuche dies:

     javaxt.io.File file = new javaxt.io.File("file-path"); file.getLastAccessTime(); 

    zuletzt bearbeitet ()

     import java.io.File; import java.util.Date; public class FileExample { public static void main(String[] args) { File f = null; String path; long millisec; boolean bool = false; try{ f = new File("c:/demo.txt"); bool = f.exists(); if(bool) { millisec = f.lastModified(); // date and time Date dt = new Date(millisec); // path path = f.getPath(); System.out.print(path+" last modified at: "+dt); } }catch(Exception e){ e.printStackTrace(); } } } 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.