diff --git a/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java b/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java index 3407a6b7..34966734 100644 --- a/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java +++ b/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java @@ -883,8 +883,12 @@ public class MpMasterService extends Service { relaunchIntent.setPackage("com.android.systemui"); // getApplicationContext().sendBroadcast(restartIntent); + long launchTs = System.currentTimeMillis() + (mHeartbeatDuration + 2) * 1000; + PendingIntent sysKAPendingIntent = PendingIntent.getBroadcast(this, BROADCAST_REQUEST_CODE_SYS_KEEPALIVE, relaunchIntent, PendingIntent.FLAG_UPDATE_CURRENT); - alarmManager.setExactAndAllowWhileIdle(AlarmManager.RTC_WAKEUP, SystemClock.elapsedRealtime() + (mHeartbeatDuration + 2) * 1000, sysKAPendingIntent); + alarmManager.setExactAndAllowWhileIdle(AlarmManager.RTC_WAKEUP, launchTs, sysKAPendingIntent); + + logger.info(String.format("Register KeepAlive Launch Clock: " + format.format(new Date(launchTs)))); } @Override