以程式設計方式啟用和禁用廣播接收器
要啟用或禁用 BroadcastReceiver
,我們需要獲取 PackageManager
的引用,我們需要一個 ComponentName
物件,其中包含我們要啟用/禁用的接收器類:
ComponentName componentName = new ComponentName(context, MyBroadcastReceiver.class);
PackageManager packageManager = context.getPackageManager();
現在我們可以呼叫以下方法來啟用 BroadcastReceiver
:
packageManager.setComponentEnabledSetting(
componentName,
PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
PackageManager.DONT_KILL_APP);
或者我們可以使用 COMPONENT_ENABLED_STATE_DISABLED
來禁用接收器:
packageManager.setComponentEnabledSetting(
componentName,
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
PackageManager.DONT_KILL_APP);