静态/动态注冊广播的差别
广播接收器注冊一共同拥有两种形式 : 静态注冊和动态注冊.
两者及其接收广播的差别:
1.动态注冊的广播永远要快于静态注冊的广播,无论静态注冊的优先级设置的多高,无论动态注冊的优先级有多低>\
2.动态注冊广播不是常驻型广播,也就是说广播尾随activity的生命周期。注意: 在activity结束前,移除广播接收器。
静态注冊是常驻型,也就是说当应用程序关闭后,假设有信息广播来,程序也会被系统调用自己主动执行。
3.在同一个优先级下,谁先启动的快,谁将先接收到广播.
动态注冊代码:
UpdateBroadcast broadcast= new UpdateBroadcast(); IntentFilter filter = new IntentFilter("com.unit.UPDATE"); registerReceiver(broadcast, filter);
静态注冊代码(在配置文件里加入):
<receiver android:name="net.youmi.android.AdReceiver" > <intent-filter> <action android:name="android.intent.action.PACKAGE_ADDED" /> <data android:scheme="package" /> </intent-filter> </receiver>