CODEDRAGON ㆍDevelopment/Android
브로드케스트 메서드
· 브로드케스트(수신) 메서드
· 브로드케스트(방송) 메서드
· 필요할 때만 방송을 수신할 경우
브로드케스트(수신) 메서드
· BroadcastReceiver 클래스로부터 상속받으며 방송을 수신하는 메서드는 다음과 같이 재정의해서 사용합니다.
· 방송이 수신되면 onReceive 메서드가 호출되며, context는 BroadcastReceiver이 실행되는 컨텍스트이며, intent는 수신된 방송 내용입니다.
· BroadcastReceiver은 프로세스의 메인 스레드에서 실행되고, 너무 오래 시간을 끌어서는 안 되며 10초내로 리턴해야 합니다.
· 브로드케스트는 System이 보내고 응용 프로그램은 수신만 하는 것이 일반적입니다.
void onReceive (Context context, Intent intent) |
브로드케스트(방송) 메서드
· Intent 인수는 전달하고자 하는 방송 내용이고, 액션에 방송의 주 내용을 대입하며 인텐트의 다른 필드에 추가 정보를 전달할 수 있습니다.
· 허가를 받은 수신자에게만 방송을 보내고 싶다면 두 번째 인수로 퍼미션을 지정하되 퍼미션이 필요 없으면 인수를 생략하거나 null로 전달합니다.
· 일반 방송은 비동기적으로 동작하여 호출 시 즉시 리턴합니다.
· 비동기적이며 비 순서적이므로 효율이 좋습니다.
· 순서 있는 방송은 인텐트 필터의 android:priority 속성이 지정하는 중요도에 따라 수신 순서가 결정되어 차례대로 전달됩니다.
void sendBroadcast(Intent intent, [String receiverPermission]) void sendOrderedBroadcast(Intent intent, String receiverPermission) |
필요할 때만 방송을 수신할 경우
필요할 때만 방송을 수신하려면 매니페스트에 등록할 필요 없이, 메서드로 등록 및 해제하면 됩니다.
BR을 등록 및 해제 메소드 |
설명 |
Intent registerReceiver (BroadcastReceiver receiver, IntentFilter filter) |
· BroadcastReceiver 객체와 인텐트 필터를 전달합니다 · BroadcastReceiver을 등록할 최적의 시점은 onResume() |
void unregisterReceiver (BroadcastReceiver receiver) |
· 액티비티가 종료될 때는 BroadcastReceiver 등록을 해제해야 합니다. · 등록을 해제할 최적의 시점은 onPause() |
'Development > Android' 카테고리의 다른 글
"Empty Activity" 프로젝트 생성하기 (0) | 2019.03.26 |
---|---|
배터리의 상태 체크 액션 (0) | 2019.03.19 |
BroadcastReceiver 종류 (0) | 2019.03.19 |
안드로이드 폰의 주요 이벤트 리스트 (0) | 2019.03.19 |
Broadcast Receiver, Broadcast (0) | 2019.03.19 |