1.禁止某Broadcast启动
final ComponentName receiver = new ComponentName(context,BootBroadcastReceiver.class);
final PackageManager pm = context.getPackageManager();
pm.setComponentEnabledSetting(receiver,PackageManager.COMPONENT_ENABLED_STATE_DISABLED,PackageManager.DONT_KILL_APP);
2.禁止某Activity启动
PackageManager pm = getPackageManager();
ComponentName name = new ComponentName(this, WizardActivity.class);
pm.setComponentEnabledSetting(name, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
3.禁止某Service启动
略
4.在禁止情况下启动方法(以Activity为例):
PackageManager pm = getPackageManager();
ComponentName name = new ComponentName(this, WizardActivity.class);
pm.setComponentEnabledSetting(name, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);
附
不可用状态:COMPONENT_ENABLED_STATE_DISABLED
可用状态:COMPONENT_ENABLED_STATE_ENABLED
默认状态:COMPONENT_ENABLED_STATE_DEFAULT