2013-08-12 2 views
0

나는 그 의도를 sendOrderedBroadcast(i, null);을 통해 브로드 캐스트 할 때 i이라는 의도를 가지고 있습니다. 임의의 수신기가 호출되었습니다 (완전히 정상적인 것입니다). queryBroadcastReceivers (Intent intent, int flags)을 사용했으며 여러 개의 Broadcastreceivers가 등록되어 있습니다. 내 의도를 특정 수신자에게 보내고 싶습니다.특정 broascastreceiver에 내 의도를 보내는 방법

누구나 친절하게 알려주시겠습니까?

미리 감사드립니다.

+0

에이 코드를 추가 할 수 있습니까? – Karakuri

+0

아니요, 모든 수신기가 queryBroadcastReceivers (someCommonIntent, 0) API를 사용하고 있습니다. Broadcast를 그 중 하나에 보내고 싶습니다. 내 앱에서 방송 할 필요는 없습니다. – tekkavi

+0

그건 시스템에 의해 처리되어야하는 주문한 방송을하는 목적을 이길 것 같습니다 ... – Karakuri

답변

0

브로드 캐스트 리시버 : 당신이 당신의 자신의 응용 프로그램 내에서 대상으로하는 수신기가

public class OutgoingReceiver extends BroadcastReceiver { 

    public static final String CUSTOM_INTENT = "jason.wei.custom.intent.action.TEST"; 

    @Override 
    public void onReceive(Context context, Intent intent) { 
     System.out.println("HIT OUTGOING"); 
     Intent i = new Intent(); 
     i.setAction(CUSTOM_INTENT); 
     context.sendBroadcast(i); 
    } 

} 

매니페스트

<receiver android:name=".IncomingReceiver" android:enabled="true"> 
    <intent-filter> 
     <action android:name="jason.wei.custom.intent.action.TEST"></action> 
    </intent-filter> 
</receiver> 
+0

죄송합니다. 당신은 단지 대리인을 만들고 있습니다. 특정 수신자를 어떻게 타겟팅 할 수 있습니까? 몇 가지 설명을 추가해주세요. – tekkavi

+0

@tekkavi이 링크를 참조하십시오. http://thinkandroid.wordpress.com/2010/02/02/custom-intents-and-broadcasting-with-receivers/ – PrvN

관련 문제