BroadcastReceiver Demo

package com.example.h2;

import android.app.Activity;
import android.app.KeyguardManager;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.os.PowerManager;
import android.os.PowerManager.WakeLock;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity{

	private final String ACTION_NAME = "com.android.network.intercom";
	private final String ACTION_NAME2 = "com.android.network.intercom.close";
	private Button mBtnMsgEvent = null;

	TextView tv;

	protected void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);

		//注册广播
		registerBoradcastReceiver();
		
		LinearLayout mLinearLayout = new LinearLayout(this);
		mBtnMsgEvent = new Button(this);
		tv=new TextView(this);
		mBtnMsgEvent.setText("发送广播");
		mLinearLayout.addView(mBtnMsgEvent);
		mLinearLayout.addView(tv);
		setContentView(mLinearLayout);
		
		mBtnMsgEvent.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) {
				Intent mIntent = new Intent(ACTION_NAME);
				mIntent.putExtra("yaner", "发送广播,相当于在这里传送数据");
				
				//发送广播
				sendBroadcast(mIntent);
			}
		});
	}
	
	private BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver(){
		@Override
		public void onReceive(Context context, Intent intent) {
			String action = intent.getAction();
			if(action.equals(ACTION_NAME)){
				tv.setText("intercom");
				Toast.makeText(MainActivity.this, "处理action名字相intercom", 0).show();
	
			}else if(action.equals(ACTION_NAME2)){
				tv.setText("intercom.close");
				Toast.makeText(MainActivity.this, "处理action名字相对intercom.close", 0).show();
				
			}
		}
		
	};
	
	public void registerBoradcastReceiver(){
		IntentFilter myIntentFilter = new IntentFilter();
		myIntentFilter.addAction(ACTION_NAME);
		//注册广播      
		registerReceiver(mBroadcastReceiver, myIntentFilter);
	}

	@Override
	protected void onDestroy() {
		// TODO Auto-generated method stub
		super.onDestroy();
		  unregisterReceiver(mBroadcastReceiver); 
	}

	@Override
	protected void onPause() {
		// TODO Auto-generated method stub
		super.onPause();
	
	}
	
}

你可能感兴趣的:(BroadcastReceiver Demo)