您的位置:首页 > 其它

广播监听apk的安装,卸载和替换

2011-07-15 14:03 549 查看
广播监听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(); }
  */
  }
  }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: