From 29c244bccd0fdcc596806f48225edba29c68ef1e Mon Sep 17 00:00:00 2001 From: Matthew Date: Sat, 11 May 2024 13:16:08 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E4=BF=9D=E6=B4=BB=E6=A3=80?= =?UTF-8?q?=E6=B5=8B=E6=9C=BA=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/xypower/mpmaster/MpMasterService.java | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java b/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java index e6dc516c..8b805106 100644 --- a/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java +++ b/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java @@ -350,12 +350,14 @@ public class MpMasterService extends Service { return; } - File mpappDb = new File(appPath + "data/App.db"); - long modifiedTimeOfDb = 0; - if (mpappDb.exists()) { - modifiedTimeOfDb = mpappDb.lastModified(); - } - if ((ts - modifiedTimeOfDb) > mTimeOfMpAppAlive) { + File mpappHb = new File(appPath + "data/alive/hb"); + long modifiedTimeOfHb = getFileModificationTime(appPath + "data/alive/hb"); + long modifiedTimeOfPhoto = getFileModificationTime(appPath + "data/alive/taking"); + long modifiedTimeOfUpload = getFileModificationTime(appPath + "data/alive/upload"); + + if (((ts - modifiedTimeOfHb) > mTimeOfMpAppAlive) || + ((ts - modifiedTimeOfPhoto) > mTimeOfMpAppAlive * 4) || + ((ts - modifiedTimeOfUpload) > mTimeOfMpAppAlive * 4)) { // greater than 30m logger.warning("Start MpAPP as it is NOT running"); MicroPhotoContext.restartMpApp(context); @@ -366,6 +368,16 @@ public class MpMasterService extends Service { } } + long getFileModificationTime(String path) { + File file = new File(path); + long mt = 0; + if (file.exists()) { + mt = file.lastModified(); + } + + return mt; + } + public String getMpAppVersion() { if (TextUtils.isEmpty(mMpAppVersion)) { PackageManager packageManager = getPackageManager();