主题 : Android 代码监控apk安装,卸载,替换 复制链接 | 浏览器收藏 | 打印
欢迎加入清源的android开发交流群:314230976,加群时请验证:arm,谢谢!
级别: 侠客
UID: 94332
精华: 0
发帖: 72
金钱: 370 两
威望: 74 点
综合积分: 144 分
注册时间: 2013-07-14
最后登录: 2013-09-25
楼主  发表于: 2013-09-09 16:42

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

[Java]代码
复制代码
  1. public class GetBroadcast extends BroadcastReceiver {
  2. private static GetBroadcast mReceiver = new GetBroadcast();
  3. private static IntentFilter mIntentFilter;
  4. public static void registerReceiver(Context context) {
  5. mIntentFilter = new IntentFilter();
  6. mIntentFilter.addDataScheme("package");
  7. mIntentFilter.addAction(Intent.ACTION_PACKAGE_ADDED);
  8. mIntentFilter.addAction(Intent.ACTION_PACKAGE_REMOVED);
  9. mIntentFilter.addAction(Intent.ACTION_PACKAGE_REPLACED);
  10. context.registerReceiver(mReceiver, mIntentFilter);
  11. }
  12. public static void unregisterReceiver(Context context) {
  13. context.unregisterReceiver(mReceiver);
  14. }
  15. @Override
  16. public void onReceive(Context context, Intent intent) {
  17. String action = intent.getAction();
  18. if (Intent.ACTION_PACKAGE_ADDED.equals(action)) {
  19. Toast.makeText(context, "有应用被添加", Toast.LENGTH_LONG).show();
  20. } else if (Intent.ACTION_PACKAGE_REMOVED.equals(action)) {
  21. Toast.makeText(context, "有应用被删除", Toast.LENGTH_LONG).show();
  22. }
  23. /*
  24. * else if(Intent.ACTION_PACKAGE_CHANGED.equals(action)){
  25. * Toast.makeText(context, "有应用被改变", Toast.LENGTH_LONG).show(); }
  26. */
  27. else if (Intent.ACTION_PACKAGE_REPLACED.equals(action)) {
  28. Toast.makeText(context, "有应用被替换", Toast.LENGTH_LONG).show();
  29. }
  30. /*
  31. * else if(Intent.ACTION_PACKAGE_RESTARTED.equals(action)){
  32. * Toast.makeText(context, "有应用被重启", Toast.LENGTH_LONG).show(); }
  33. */
  34. /*
  35. * else if(Intent.ACTION_PACKAGE_INSTALL.equals(action)){
  36. * Toast.makeText(context, "有应用被安装", Toast.LENGTH_LONG).show(); }
  37. */
  38. }
  39. }
欢迎加入android开发交流群,群号是:314230976