28广播接收

来源:互联网 发布:淘宝付款打不开怎么办 编辑:程序博客网 时间:2024/05/16 15:36

Broadcasts分类:
1、Normal broadcasts(通过Context.sendBroadcast发送)
   所有接收器同时接到此类广播不能被中止
2、Ordered broadcasts(通过Context.sendOrderedBroadcast)
   按优先级依次接到此类广播,一个接收者处理完再广播到下一个
   可以通过abortBroadcast()中止,通过android:priority设置优先(-1000到1000)

编写BroadcastReceiver步骤:
1、继承BroadcastReceiver
2、复写onReceive()
3、注册BroadcastReceiver

BroadcastReceiver注册:
1、第一种(程序关闭则不再接收广播):Context.registerReceiver()
IntentFilter filter = new IntentFilter();
filter.addAction("");
Context.registerReceiver(smsReceiver, filter);
2、第二种(程序关闭依然接收广播):AndroidManifest.xml中用<receiver>来注册
<receiver android:name=".SmsBroadcastReceiver" >
 <intent-filter android:priority="1000" >
  <action android:name="android.provider.Telephony.SMS_RECEIVED" />
 </intent-filter>
</receiver>

BroadcastReceiver生命周期:
onReceive()


0 0
原创粉丝点击