关闭

Android 广播的代码注册与简单使用

标签: androidbroadcastreceiver
110人阅读 评论(0) 收藏 举报
分类:

1、自定义广播

public class MyBroadcastReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
    Log.i("syx", "接收到了广播,可在此做处理");

    }
}

2、使用广播
(1)自定义Action用于开启广播

public static final String BROADCAST_ACTION = “what.you.want.just.do.it.by.yourself”;

(2)声明自定义的广播
/**
* 自定义广播
*/
private MyBroadcastReceiver receiver;

(3)代码中注册广播

receiver = new MyBroadcastReceiver();
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(BROADCAST_ACTION);
registerReceiver(receiver, intentFilter);

(4)操作的地方发出此广播事件,使用Intent

findViewById(R.id.click).setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            Intent intent = new Intent();  
            intent.setAction(BROADCAST_ACTION);  
            MainActivity.this.sendBroadcast(intent);  

        }
    }); 

(5)界面销毁的地方清除注册的广播,防止内存泄漏

@Override
protected void onDestroy() {
    super.onDestroy();
    if (null!=receiver) {
        unregisterReceiver(receiver);
    }
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:22480次
    • 积分:879
    • 等级:
    • 排名:千里之外
    • 原创:67篇
    • 转载:2篇
    • 译文:1篇
    • 评论:3条
    最新评论