브로드캐스트 리시버 : 시스템이 방송한 정보를 수신할 수 있는 수신기
브로드캐스팅 시작하는 코드
1 2 3 4 | Intent intent = new Intent(); intent.setAction("com.test.Broadcasting.action.FILE_DOWNLOADED"); intent.putExtra("FILE_NAME","broadcastTest.txt"); sendBroadcast(intent); | cs |
1.인텐트 객체 생성
2.어떤 상황을 방송할 것인지 액션을 정함
3.내려받은 파일명을 엑스트라에 추가
4.방송
브로드캐스팅 리시버
정적 리시버 : 한번 등록시 해제할 수 없음 (AndroidManifest.xml 에서 설정)
AndroidManifest.xml에 추가
1 2 3 4 5 | <receiver android:name="클래스이름"> <intent-filter> <action android:name="com.test.Broadcasting.action.FILE_DOWNLOADED"/> </intent-filter> </receiver> | cs |
1. 동작을 처리할 클래스 이름
3. 리시버가 들을 액션
동작을 처리할 클래스는 BroadcastReceiveer를 상속받은 후 onReceive메소드를 오버라이딩하면 됨
동적 리시버 : 등록과 해제가 자유로움 (BroadcastReceiver 객체 생성)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | BroadcastReceiver m_FileRecevier = null; IntentFilter intentFilter = new IntentFilter(); intentFilter.addAction("com.test.Broadcasting.action.FILE_DOWNLOADED"); m_FileRecevier = new BroadcastReceiver(){ @Override public void onReceive(Context context, Intent intent){ } } registerReceiver(m_FileReceiver,intentFilter); unregisterReceiver(m_FileReceiver); | cs |
1.브로드캐스트 리시버 객체 생성
2~3.인탠트 필터 객체 생성하여 액션 추가
5~10. 브로드캐스트 리시버에서 onReceive 오버라이딩
12. 브로드캐스트 리시버와 인탠트필터로 리시버 등록
14. 해제할 때 사용
'프로그래밍 > Java, Android' 카테고리의 다른 글
(안드로이드) NFC를 이용한 라즈베리파이와 통신 (0) | 2016.07.10 |
---|---|
(안드로이드) USB Serial 통신 프로젝트 (0) | 2016.07.10 |
(안드로이드) 카드맞추기게임 (0) | 2016.07.10 |
(Android) LG 360 cam SDK 사용하기 (1) (0) | 2016.07.10 |
(Java) UDP 통신 (0) | 2016.07.10 |