1.定义一个广播接收器
public class BroadcastReceiver extends android.content.BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
Log.v("test","开始接收广播信息");
String msg = intent.getStringExtra("message");
Toast.makeText(context, msg, Toast.LENGTH_SHORT).show();
}
}
2.在AndroidManifest中注册上面定义好的广播接收器
<receiver android:name=".BroadcastReceiver">
<intent-filter>
<action android:name="zww"/>
</intent-filter>
</receiver>
上面的一句<action android:name="zww"/>中的字符串zww只是起一个标记的作用
3.在一个Activity中发布广播,例如在一个Activity中按下一个按钮时即发布输入框中输入的信息广播
tv_broad=(TextView)findViewById(R.id.editText1);
bt_broad=(Button)findViewById(R.id.bt_broad);
bt_broad.setOnClickListener(broadListenter);
private Button.OnClickListener broadListenter = new Button.OnClickListener(){
@Override
public void onClick(View arg0) {
Log.v("test","按钮被点击了");
// TODO Auto-generated method stub
//创建Intent,将com.test.BroadcastReceiver作为识别广播消息的字符串标识
Intent intent = new Intent("zww"); 这里的zww与在AndroidManifest中定义广播接收器中的标识字符串相对应
intent.putExtra("message", tv_broad.getText().toString());
sendBroadcast(intent);
Log.v("test","发送广播信息");
}
};