From 9a76fca9a404cf73d0714add33a1f9ca9f7a5efb Mon Sep 17 00:00:00 2001 From: BlueMatthew Date: Mon, 5 Feb 2024 17:36:29 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0Package=E5=8F=98=E5=8C=96?= =?UTF-8?q?=E7=9A=84=E9=80=9A=E7=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/xypower/mpmaster/AppMaster.java | 3 +++ .../java/com/xypower/mpmaster/MpMasterService.java | 13 +++++++++++++ .../java/com/xypower/mpmaster/UpdateReceiver.java | 1 + 3 files changed, 17 insertions(+) diff --git a/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java b/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java index 50ed3320..f559577f 100644 --- a/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java +++ b/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java @@ -5,6 +5,7 @@ import android.os.Environment; import android.os.PowerManager; import android.os.SystemClock; import android.text.TextUtils; +import android.util.Log; import android.util.Pair; import android.util.Base64; @@ -39,6 +40,7 @@ import java.util.List; public class AppMaster { + private static String TAG = "MPLOG"; private MpMasterService mService; private String mMasterUrl; private String mCmdid; @@ -398,6 +400,7 @@ public class AppMaster { if (dl.download(url, apkPath)) { sendResult(cid, 1, action, action + ":" + mCmdid); Context context = mService.getApplicationContext(); + Log.i(TAG, "Upgrade APP: " + url); SysApi.installApk(context, apkPath, context.getPackageName(), true); } } diff --git a/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java b/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java index b7b27725..e994242a 100644 --- a/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java +++ b/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java @@ -108,6 +108,7 @@ public class MpMasterService extends Service { protected long mNativeHandle = 0; private AlarmReceiver mAlarmReceiver = null; private ScreenActionReceiver mScreenaAtionReceiver = null; + private UpdateReceiver mUpdateReceiver = null; private ServiceHandler mHander = null; private Messenger mMessenger = null; @@ -169,6 +170,17 @@ public class MpMasterService extends Service { registerReceiver(mAlarmReceiver, intentFilter); } + { + mUpdateReceiver = new UpdateReceiver(); + IntentFilter intentFilter = new IntentFilter(); + intentFilter.addAction(Intent.ACTION_PACKAGE_ADDED); + intentFilter.addAction(Intent.ACTION_PACKAGE_REMOVED); + intentFilter.addAction(Intent.ACTION_PACKAGE_REPLACED); + intentFilter.addDataScheme("package"); + registerReceiver(mUpdateReceiver, intentFilter); + + } + // AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE); startMaster(); @@ -185,6 +197,7 @@ public class MpMasterService extends Service { unregisterReceiver(mAlarmReceiver); unregisterReceiver(mScreenaAtionReceiver); + unregisterReceiver(mUpdateReceiver); super.onDestroy(); } diff --git a/mpmaster/src/main/java/com/xypower/mpmaster/UpdateReceiver.java b/mpmaster/src/main/java/com/xypower/mpmaster/UpdateReceiver.java index 82bd571a..96946481 100644 --- a/mpmaster/src/main/java/com/xypower/mpmaster/UpdateReceiver.java +++ b/mpmaster/src/main/java/com/xypower/mpmaster/UpdateReceiver.java @@ -29,6 +29,7 @@ public class UpdateReceiver extends BroadcastReceiver { } } else if (action.equals(Intent.ACTION_PACKAGE_ADDED)) {// Install broadcast Log.e(TAG, "onReceive:Installed and Start the App:" + targetPackageName); + MpMasterService.resetVersions(); if (packageName.equals("package:" + targetPackageName)) { /*SystemUtil.reBootDevice();*/ // SysApi.enableApp(context, targetPackageName);