2010-11-27 2 views
2

Observer를 구현하는 클래스가 있습니다.활동을 연장하지 않는 수업에서 방송을 보낼 수 있습니까?

Obervered 상태가 변경되면이 클래스에서 트리거되는 메서드가 있습니다.이 메서드에서 브로드 캐스트를 보내려고합니다. 이것은 내 활동이 브로드 캐스트 메시지를 청취하고 데이터로 무언가를 할 수 있음을 의미합니다.

이 어떻게 이것을 달성 할 수있는, 내가 여기에 애플리케이션 컨텍스트에 액세스 할 수 없기 때문에 지금까지

public class DoStuff extends BroadcastReceiver implements Observer 
{ 
    public void observe(String message) 
    { 
     Log.d("TEST", "Inside observe() on DoStuff " + message); 

     // Here I want to send out a broadcast to MyActivity with message 
     // in the extras 
    } 

} 

내가 context.sendBroadcast를 사용할 수 있습니다 무엇인가? 사전에

감사

+0

BroadcastReciever의 'onRecieve'에있는 'Context' 선물을 사용하지 않는 이유는 ... 미안하지만 아직 시도하지는 않았지만 한 번 해보는 것이 좋습니다. – st0le

답변

0

가 왜 Observer 인터페이스를 구현 BroadcastReciever를 사용합니까? Context 인스턴스에 실제로 액세스해야하는 경우에 Service 또는 Application이 더 적합한 후보라고 생각됩니다. BroadcastRecieversonRecieve() 메서드 호출 중에 만 살아 있기 때문에 내 관점에서는 Observer 인터페이스를 구현하는 것은 의미가 없습니다.

관련 문제