當我在Manifest.xml中創建和注冊接收器時,使用的下面的代碼:
<receiver
android:name="com.mycompanh.MyStartReceiver">
<intent-filter>
<action
android:name="android.net.conn.CONNECTIVITY_CHANGE" />
<action
android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
那我怎麼注銷接收器呢?
可以通過PackageManager禁用:
PackageManager pm = this.getPackageManager();
ComponentName receiverName = new ComponentName(this,MyStartReceiver.class);
pm.setComponentEnabledSetting(receiverName, newState, flags);
其中,newState就是COMPONENT_ENABLED_STATE_ENABLED,COMPONENT_ENABLED_STATE_DISABLED,COMPONENT_ENABLED_STATE_DEFAULT 這幾個參數;
flags就是DONT_KILL_APP或者0.
具體可以查看setComponentEnabledSetting()方法的注釋,說的很清楚.
試試吧,應該可以.