阅读450 返回首页    go 阿里云 go 技术社区[云栖]


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

 

Java代码

  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(); }

  */

  }

  }

最后更新:2017-04-02 06:51:56

  上一篇:go [usaco]4.2.1 最大流问题Drainage Ditches
  下一篇:go Android获取外部和内部存储空间总大小