Android Activation et désactivation d'un récepteur de diffusion par programmation


Exemple

Pour activer ou désactiver un BroadcastReceiver , nous devons obtenir une référence au PackageManager et nous avons besoin d'un objet ComponentName contenant la classe du récepteur que nous voulons activer / désactiver:

ComponentName componentName = new ComponentName(context, MyBroadcastReceiver.class);
PackageManager packageManager = context.getPackageManager();

Maintenant, nous pouvons appeler la méthode suivante pour activer le BroadcastReceiver :

packageManager.setComponentEnabledSetting(
    componentName,
    PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
    PackageManager.DONT_KILL_APP);

Ou nous pouvons utiliser COMPONENT_ENABLED_STATE_DISABLED pour désactiver le récepteur:

packageManager.setComponentEnabledSetting(
    componentName,
    PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
    PackageManager.DONT_KILL_APP);