Android基础之BroadcastReceiver(待完善)

BroadcastReceiver是Android四大组件之一,使用前需要在Manifets.xml文件中进行注册

<receiver android:name=".MyBroadcastReceiver">

<intent-filter>

<action android:name="zxc.android.learning">  //关于intent-filter部分内容见Android基础之Intent

</intent-filter>

</receiver>


或者在代码中进行动态注册

MyReceiver myReceiver=new MyReceiver();

IntentFilter filter=new IntentFilter();

filter.addAction("zxc.android.learning");

registReceiver(myReceiver,filter); 

一般在Activity的onResume(receiver)方法中进行注册registReceiver(myReceiver,filter),在onPause()方法中进行注销unregistReceiver(myReceiver),这样在Activity暂停的时候就不会接受广播了

这里的receiver是继承自BroadcastReceiver的子类的一个实例


在继承BroadcastReceiver的子类中需要重写onReceive()方法,来定义接收到Intent后要进行的操作

class MyReceiver extends BroadcastReceiver{

         public void onReceive(Context,Intent intent){

                    //Receiver在接受到Intent后要执行的操作

                   //不要在onReceiver()方法中实现任何异步操作

          }

}


在需要发送广播的地方发送Broadcast

比如我希望刚才上面写的BroadcastReceiver能接收到我的intent

Intent intent=new Intent();

intent.setAction("zxc.android.learning"); //可以这样写成字符串,但大多数情形是定义一个字符串常量来表示

sendBroadcast(intent);


常用的都有哪些Broadcast消息???



转载于:https://www.cnblogs.com/nightkidzxc/archive/2012/02/26/2379001.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值