Android廣播BroadcastReceiver最簡單使用示例

發送者:

private void sendBroad() {
		Intent intent = new Intent(); // Itent就是我們要發送的內容
		intent.putExtra(Constant.DOWN_EXTRA,"DOWN_SUCCESS"); //Extra的用法和跳Activity一樣
		intent.setAction(Constant.DOWN_FLAG); // 設置你這個廣播的action,只有和這個action一樣的接受者才能接受者才能接收廣播
		context.sendBroadcast(intent); // 發送廣播
		}

接收者:

載入Activity時先使用initBroad()初始化廣播。
private ReceiveBroadCast mBroadCast;

private void initBroad() {
		mBroadCast = new ReceiveBroadCast();
		IntentFilter mFilter = new IntentFilter();
		mFilter.addAction(Constant.DOWN_FLAG);
		context.registerReceiver(mBroadCast, mFilter);
	}

	@Override
	public void onDestroy() {
		super.onDestroy();
		context.unregisterReceiver(mBroadCast);

	}

	public class ReceiveBroadCast extends BroadcastReceiver {
		@Override
		public void onReceive(Context context, Intent intent) {
			// 得到廣播中得到的數據,並顯示出來
			String message = intent.getStringExtra(Constant.DOWN_EXTRA);
			tvDownInfo.setText(message);
			if (message.equals("DOWN_SUCCESS")) {
				tvDownInfo.setVisibility(View.GONE);
			}
		}

	}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章