增加Package变化的通知

serial
BlueMatthew 1 year ago
parent 609603aa00
commit 9a76fca9a4

@ -5,6 +5,7 @@ import android.os.Environment;
import android.os.PowerManager; import android.os.PowerManager;
import android.os.SystemClock; import android.os.SystemClock;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log;
import android.util.Pair; import android.util.Pair;
import android.util.Base64; import android.util.Base64;
@ -39,6 +40,7 @@ import java.util.List;
public class AppMaster { public class AppMaster {
private static String TAG = "MPLOG";
private MpMasterService mService; private MpMasterService mService;
private String mMasterUrl; private String mMasterUrl;
private String mCmdid; private String mCmdid;
@ -398,6 +400,7 @@ public class AppMaster {
if (dl.download(url, apkPath)) { if (dl.download(url, apkPath)) {
sendResult(cid, 1, action, action + ":" + mCmdid); sendResult(cid, 1, action, action + ":" + mCmdid);
Context context = mService.getApplicationContext(); Context context = mService.getApplicationContext();
Log.i(TAG, "Upgrade APP: " + url);
SysApi.installApk(context, apkPath, context.getPackageName(), true); SysApi.installApk(context, apkPath, context.getPackageName(), true);
} }
} }

@ -108,6 +108,7 @@ public class MpMasterService extends Service {
protected long mNativeHandle = 0; protected long mNativeHandle = 0;
private AlarmReceiver mAlarmReceiver = null; private AlarmReceiver mAlarmReceiver = null;
private ScreenActionReceiver mScreenaAtionReceiver = null; private ScreenActionReceiver mScreenaAtionReceiver = null;
private UpdateReceiver mUpdateReceiver = null;
private ServiceHandler mHander = null; private ServiceHandler mHander = null;
private Messenger mMessenger = null; private Messenger mMessenger = null;
@ -169,6 +170,17 @@ public class MpMasterService extends Service {
registerReceiver(mAlarmReceiver, intentFilter); 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); // AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
startMaster(); startMaster();
@ -185,6 +197,7 @@ public class MpMasterService extends Service {
unregisterReceiver(mAlarmReceiver); unregisterReceiver(mAlarmReceiver);
unregisterReceiver(mScreenaAtionReceiver); unregisterReceiver(mScreenaAtionReceiver);
unregisterReceiver(mUpdateReceiver);
super.onDestroy(); super.onDestroy();
} }

@ -29,6 +29,7 @@ public class UpdateReceiver extends BroadcastReceiver {
} }
} else if (action.equals(Intent.ACTION_PACKAGE_ADDED)) {// Install broadcast } else if (action.equals(Intent.ACTION_PACKAGE_ADDED)) {// Install broadcast
Log.e(TAG, "onReceive:Installed and Start the App:" + targetPackageName); Log.e(TAG, "onReceive:Installed and Start the App:" + targetPackageName);
MpMasterService.resetVersions();
if (packageName.equals("package:" + targetPackageName)) { if (packageName.equals("package:" + targetPackageName)) {
/*SystemUtil.reBootDevice();*/ /*SystemUtil.reBootDevice();*/
// SysApi.enableApp(context, targetPackageName); // SysApi.enableApp(context, targetPackageName);

Loading…
Cancel
Save