diff --git a/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java b/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java index 2999df3d..467065a2 100644 --- a/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java +++ b/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java @@ -319,6 +319,12 @@ public class AppMaster { e.printStackTrace(); } + try { + mService.cleanLogFiles(); + } catch (Exception ex) { + ex.printStackTrace(); + } + return res; } diff --git a/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java b/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java index 1ce593e4..ce84548a 100644 --- a/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java +++ b/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java @@ -101,6 +101,8 @@ public class MpMasterService extends Service { private int mQuickHeartbeatDuration = 60; // Unit: second private int mHeartbeatDuration = 600; // 10m = 10 * 60s + private long mTimeForKeepingLogs = 86400000 * 15; // 15 days + private AlarmReceiver mAlarmReceiver = null; private ScreenActionReceiver mScreenaAtionReceiver = null; private UpdateReceiver mUpdateReceiver = null; @@ -164,7 +166,7 @@ public class MpMasterService extends Service { fi.mkdirs(); } - File logFile = new File(fi, "log.txt"); + File logFile = new File(fi, "mlog.txt"); rotatingHandler = new RotatingHandler(logFile.getAbsolutePath(), logFormatter); @@ -242,6 +244,31 @@ public class MpMasterService extends Service { } } + public void cleanLogFiles() { + + try { + String appPath = MicroPhotoContext.buildMasterAppDir(getApplicationContext()); + String logPath = appPath + "logs"; + File fi = new File(logPath); + if (!fi.exists()) { + return; + } + + Date dt = new Date(); + dt.setHours(0); + dt.setMinutes(0); + long millis = dt.getTime() - mTimeForKeepingLogs; + File[] subFiles = fi.listFiles(); + for (File f : subFiles) { + if (f.lastModified() < millis) { + f.delete(); + } + } + } catch (Exception ex) { + ex.printStackTrace(); + } + } + @Override public void onDestroy() {