我对广播的理解:手动进行广播组件的注册

第一个activity

package com.exmple.testbroadcast;

import com.example.textbroadcast.R;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.content.IntentFilter;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MyBroadcastBemo extends Activity {
	private Button send = null;
	private MyBroadcastUtil broadutil = null;
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.mybroadcastbemo);
 	//设置布局文件		
		send = (Button)findViewById(R.id.send);
	//找到按钮id		
		send.setText(R.string.send);
	//设置按钮文字		
		send.setOnClickListener(new BroadcastListener());
	//设置按钮监听器	
	}
	
	class BroadcastListener implements OnClickListener {
		public void onClick(View v) {
			Intent intent = new Intent();
	//新建intent对象			
			intent.setAction("com.exmple.testbroadcast");
	//手动通过intent的Action方法设置值		   	
			broadutil = new MyBroadcastUtil();
	//定义广播组件对象			
			IntentFilter filter = new IntentFilter("com.exmple.testbroadcast");
	//在系统过滤器中设置其值,该值与intent的Action方法设置值一致			
			MyBroadcastBemo.this.registerReceiver(broadutil, filter);
	//通过本类对象调用registerReceiver方法在andriod系统中注册broadutil广播组件			
			MyBroadcastBemo.this.sendBroadcast(intent);
	//启动广播		
		}
	}
}



第二个activity

package com.exmple.testbroadcast;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;

public class MyBroadcastUtil extends BroadcastReceiver {
	//广播组件MyBroadcastUtil继承BroadcastReceiver类	
	public MyBroadcastUtil() {
	//构造方法	
		System.out.println("MybroadcastUtil");
	}
	public void onReceive(Context context, Intent intent) {
		System.out.println("onReceiver");
	}
}



 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值