您的位置:首页 > 移动开发 > Android开发

android - 监听APK文件的安装、卸载、重装。

2012-10-11 11:19 489 查看
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(); }
*/
}
}


文章转载自 http://yuhushuan.iteye.com/blog/800816
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: