Skip to content

Instantly share code, notes, and snippets.

@AlanCheen
Created September 14, 2015 07:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save AlanCheen/ff81ba84c1bbdb653901 to your computer and use it in GitHub Desktop.
Save AlanCheen/ff81ba84c1bbdb653901 to your computer and use it in GitHub Desktop.
监听应用的安装卸载升级
public class AppReceiver extends BroadcastReceiver{
public static final String TAG = "AppReceiver";
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(Intent.ACTION_PACKAGE_ADDED)) {
String packageName = intent.getData().getSchemeSpecificPart();
Log.d(TAG, "ACTION_PACKAGE_ADDED:" + packageName);
}
if (action.equals(Intent.ACTION_PACKAGE_REMOVED)) {
String packageName = intent.getData().getSchemeSpecificPart();
Log.d(TAG,"ACTION_PACKAGE_REMOVED:"+packageName);
}
if (action.equals(Intent.ACTION_PACKAGE_REPLACED)) {
String packageName = intent.getData().getSchemeSpecificPart();
Log.d(TAG,"ACTION_PACKAGE_REPLACED:"+packageName);
}
}
}
<receiver android:name=".broadcast.AppReceiver">
<intent-filter>
<action android:name="android.intent.action.PACKAGE_ADDED"/>
<action android:name="android.intent.action.PACKAGE_REMOVED"/>
<action android:name="android.intent.action.PACKAGE_REPLACED"/>
<action android:name="android.intent.action.MY_PACKAGE_REPLACED"/>
<data android:scheme="package"/>
</intent-filter>
</receiver>
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(Intent.ACTION_PACKAGE_ADDED);
intentFilter.addAction(Intent.ACTION_PACKAGE_REMOVED);
intentFilter.addAction(Intent.ACTION_PACKAGE_REPLACED);
intentFilter.addAction(Intent.ACTION_MY_PACKAGE_REPLACED);
intentFilter.addDataScheme("package");
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment