본문 바로가기

Android

액티비티간 데이터 전달-브로드캐스트 수신자

브로드 캐스팅이란 메시지를 여러 객체에게 전달하는 방법이다. 예를 들어 SMS 수신이나 전화가 왔을때 처럼, 이러한 글로벌 이벤트를 다른 애플리케이션에 알려줄 필요가 있을 경우 브로드 캐스팅을 사용한다.

브로드 캐스팅 메시지를 받으려면 브로드 캐스트 수신자(Broadcast Receiver)라는 애플리케이션 구성요소를 이용해서 받을 수 있다.

브로드 캐스트 수신자는 매니페스트 파일에 등록해야한다. 

또한 자바 코드 상에서 registerReceiver() 라는 메소드를 이용해 등록할 수 있다. 브로드 캐스트 수신자는 그 안에 onReceiver() 메소드를 정의하면 원하는 브로드 캐스트 메시지가 도착하면 자동으로 호출된다.

수신을 원하는 메시지의 종류를 정의하려면 인텐트 필터를 이용해서 등록한다.


새로 정의한 브로드 캐스트 수신자는 BroadcastReceiver() 클래스를 상속하고 있으며, onReceiver()메소드가 정의 되어 있다.


브로드 캐스트 수신자는 <Receiver>태그를 이용해 메니페스트 파일에 추가한다. 아래의 퍼미션도 추가한다.


다른 수신자에 브로드캐스트 메시지를 보내고 싶은 경우에는 sendBroadcast() 메소드를 사용한다.