If I use the code below to disable a static BroadcastReceiver defined in AndroidManifest.xml, will it be re-enabled after a reboot? It doesn't appear to be but the docs don't say whether it should.
final ComponentName compName =
new ComponentName(context,
MyBroadcastReceiver.class);
context.getPackageManager().setComponentEnabledSetting(
compName,
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
PackageManager.DONT_KILL_APP);
Thanks in advance...
Yes. It will be reset on an application uninstall/reinstall. It will be reset if you reset it yourself with
setComponentEnabledSetting()
. It'll be reset if something with superuser privileges resets it (e.g., the device might have some manager app for controllingACTION_BOOT_COMPLETED
). And I'm not sure what happens on an app upgrade, as I haven't tried that scenario. Otherwise, it should stay persistent.No.