码迷,mamicode.com
首页 > 其他好文 > 详细

Broadcast Receiver注意事项

时间:2015-03-31 12:50:27      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:broadcastreceiver   action   接收不到   intentfilt   

  • 静态注册
<receiver
    android:name=".MyReceiver" android:enabled="true">
    <intent-filter>
        <action android:name="myAction" />
    </intent-filter>
</receiver>
  • 动态注册
@Override
protected void onStart() {
    super.onStart();
    IntentFilter intentFilter = new IntentFilter();
    intentFilter.addAction("myAction");
    registerReceiver(myReceiver, intentFilter);
}
@Override
protected void onPause() {
    super.onPause();
    unregisterReceiver(myReceiver);
}
  • 发送广播
Intent intent = new Intent();
intent.setAction("myAction");
sendBroadcast(intent);


  • 注意事项:

如果没有添加IntentFilter的Action,那么BroadcastReceiver将的onReceive(Context context, Intent intent)将收不到通知,除非你在发送的时候指明的具体的Class:

Intent intent = new Intent(MyActivity.this,MyReceiver.class);
sendBroadcast(intent);

Broadcast Receiver注意事项

标签:broadcastreceiver   action   接收不到   intentfilt   

原文地址:http://blog.csdn.net/deviltsw/article/details/44776281

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!