andoird 개발을 할 때 백그라운드에서 서비스가 계속 작동해야 할 경우나
앱을 재시작 할 경우 최초 실행되어야 하는 앱을 만들 일이 생겼다.
(채팅, 알람 등)
BroadcastReceiver 를 사용하면 쉽게 만들 수 있다.
요약 :
1. BroadcastReceiver 를 상속받은 클래스 생성
2. Manifest 에 permission(퍼미션) 등록
3. Manifest에 receiver(리시버) 등록
1. Class 생성
public class StartReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String action= intent.getAction();
}
}
}
1번 라인 : BroadcastReceiver 를 상속받는 클래스 생성한다.
3번 라인 : onReceive 함수는 BroadcastReceiver 실행될 때 자동 실행한다.
4번 라인 : Manifest 파일안에 현재 등록한 Receiver에게 적용된 필터(Filter)의 Action만 받아온다.
6번 라인 : action값을 확인하여 시스템 상태가 부팅을 완료했는지 체크한다.
7번 라인 : 서비스를 실행하거나 Intent로 Activity 호출한다.
2. Manifest 에 permission(퍼미션) 등록
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>