Android 代码监控apk安装,卸载,替换

public class GetBroadcast extends BroadcastReceiver {
  
private static GetBroadcast mReceiver = new GetBroadcast();
  
private static IntentFilter mIntentFilter;
  
public static void registerReceiver(Context context) {
  
mIntentFilter = new IntentFilter();
  
mIntentFilter.addDataScheme("package");
  
mIntentFilter.addAction(Intent.ACTION_PACKAGE_ADDED);
  
mIntentFilter.addAction(Intent.ACTION_PACKAGE_REMOVED);
  
mIntentFilter.addAction(Intent.ACTION_PACKAGE_REPLACED);
  
context.registerReceiver(mReceiver, mIntentFilter);
  
}
  
public static void unregisterReceiver(Context context) {
  
context.unregisterReceiver(mReceiver);
  
}
  
@Override
  
public void onReceive(Context context, Intent intent) {
  
String action = intent.getAction();
  
if (Intent.ACTION_PACKAGE_ADDED.equals(action)) {
  
Toast.makeText(context, "有应用被添加", Toast.LENGTH_LONG).show();
  
} else if (Intent.ACTION_PACKAGE_REMOVED.equals(action)) {
  
Toast.makeText(context, "有应用被删除", Toast.LENGTH_LONG).show();
  
}
  
/*
  
* else if(Intent.ACTION_PACKAGE_CHANGED.equals(action)){
  
* Toast.makeText(context, "有应用被改变", Toast.LENGTH_LONG).show(); }
  
*/
  
else if (Intent.ACTION_PACKAGE_REPLACED.equals(action)) {
  
Toast.makeText(context, "有应用被替换", Toast.LENGTH_LONG).show();
  
}
  
/*
  
* else if(Intent.ACTION_PACKAGE_RESTARTED.equals(action)){
  
* Toast.makeText(context, "有应用被重启", Toast.LENGTH_LONG).show(); }
  
*/
  
/*
  
* else if(Intent.ACTION_PACKAGE_INSTALL.equals(action)){
  
* Toast.makeText(context, "有应用被安装", Toast.LENGTH_LONG).show(); }
  
*/
  
}
  
}
原文地址:https://www.cnblogs.com/lr393993507/p/5542773.html