티스토리 뷰
broadcast에 대한 receiver를 확보하는 과정
broadcastIntentLocked() 메서드 내부에서
아래와 같이 receiver와 registeredReceivers 라는 변수가 있다.
16744 // Figure out who all will receive this broadcast. 16745 List receivers = null; 16746 List<BroadcastFilter> registeredReceivers = null;receivers는 정적리시버들을 위한 list이고
registeredReceivers는 동적리시버들을 위한 list로 보인다.
정적리시버 list
-정적리시버 list를 확보하기 위하여 collectReceiverComponents() 메서드를 호출한다.
해당 메서드를 호출하기 위한 조건은
intent.getFlags()&Intent.FLAG_RECEIVER_REGISTERED_ONLY) == 0 즉, 동적리시버에게만 전달되는 brodacast intent 가 아닌 경우이다.
댓글