diff --git a/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java b/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java index c1086c90..223d404e 100644 --- a/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java +++ b/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java @@ -898,7 +898,7 @@ public class AppMaster { Context context = mService.getApplicationContext(); mService.logger.info("Upgrade OTA: " + url); - SysApi.installOTA(context, context.getPackageName(), otaPath); + mService.installOTA(otaPath); } else { mService.logger.warning("Failed to Download:" + url); } @@ -921,12 +921,12 @@ public class AppMaster { final String mpAppDir = MicroPhotoContext.buildMpAppDir(mService.getApplicationContext()); final File logDir = new File(mpAppDir + "logs" + File.separator); - if (!logDir.exists()) { - return; - } List folders = new ArrayList<>(); - folders.add(logDir); + + if (logDir.exists()) { + folders.add(logDir); + } final String masterAppDir = MicroPhotoContext.buildMasterAppDir(mService.getApplicationContext()); final File mlogDir = new File(masterAppDir + "logs" + File.separator); @@ -934,6 +934,11 @@ public class AppMaster { folders.add(mlogDir); } + if (folders.isEmpty()) { + mService.logger.warning("Both Log Directories are not Existed"); + return; + } + ZipUtils.Filter filter = new ZipUtils.Filter() { @Override public boolean match(String fileName) { diff --git a/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java b/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java index 68f19808..8f582063 100644 --- a/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java +++ b/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java @@ -469,7 +469,7 @@ public class MpMasterService extends Service { MicroPhotoContext.AppConfig appConfig = MicroPhotoContext.getMpAppConfig(getApplicationContext()); - logger.warning("Start Mntn report:" + masterUrl + " Mntn Mode=" + Boolean.toString(mMntnMode) + " QuickHB=" + Boolean.toString(mQuickHbMode)); + logger.warning("Start Mntn report: " + masterUrl + " Mntn Mode=" + Boolean.toString(mMntnMode) + " QuickHB=" + Boolean.toString(mQuickHbMode)); AppMaster appMaster = new AppMaster(this, masterUrl, appConfig.cmdid, bundleWithMpApp); appMaster.start(); @@ -524,27 +524,21 @@ public class MpMasterService extends Service { String cmd = intent.getStringExtra("cmd"); String msg = intent.getStringExtra("msg"); - // Log.e("_otg_","cmd="+cmd); - if("write".equals(cmd)) - { + // mService.logger.info("cmd=" + cmd + " msg=" + msg); + if("write".equals(cmd)) { // int progress = Integer.parseInt(msg); } - else if("update".equals(cmd)) - { + else if("update".equals(cmd)) { // int progress = Integer.parseInt(msg); } - else if("info".equals(cmd)) - { - + else if("info".equals(cmd)) { } - else if("error".equals(cmd)) - { + else if("error".equals(cmd)) { mService.logger.warning("UPD OTA Failed"); } - else if("success".equals(cmd)) - { + else if("success".equals(cmd)) { //confirm to reboot device ?? - mService.logger.warning("UPD OTA Succeeded, will RESET dev"); + mService.logger.warning("UPD OTA Succeeded, will REBOOT device"); Handler handler = new Handler(); handler.postDelayed(new Runnable() { @Override @@ -568,6 +562,17 @@ public class MpMasterService extends Service { } } + public void installOTA(final String path) { + final Context context = getApplicationContext(); + mHander.post(new Runnable() { + @Override + public void run() { + SysApi.installOTA(context, context.getPackageName(), path); + } + }); + + } + private void registerHeartbeatTimer() { long timeout = mHeartbeatDuration;