2011-02-03 9 views
13

sendBroadcast() - Czy należy go nazwać działaniem? Próbuję wywołać metodę sendBroadcast() z mojej metody klasy narzędziowej, która nie rozszerza działania. Otrzymuję błąd kompilacji jak poniżejUżycie sendBroadcast()

Sposób sendBroadcast (zamiar) jest niezdefiniowana dla typu MyWrapperClass MyWrapperClass.java

Oto fragment kodu:

abstract class MyWrapperClass { 

    public static void sendData() 
     { 
      Intent intent = new Intent ("com.proj.utility.mgr",null); 

      intent.putExtra("example","Broadcasting "); 

      sendBroadcast(intent); 

     } 
    } 

Czy istnieje jakakolwiek koncepcja za pomocą wywołania sendBroadcast w mojej klasie. Nie ma problemu z używaniem sendBroadcast() wewnątrz działania. Czy ktoś może mi pomóc rozwiązać ten problem? Lub Wszelkie inne sugestie są proszone o asynchroniczne przekazywanie danych z klasy narzędziowej do aplikacji. Z góry dzięki.

+2

potrzebujesz dostępu do kontekstu aplikacji, aby zadzwonić do sendbroadcast. Nie możesz uzyskać tych informacji z dokumentacji Android. –

Odpowiedz

20

Należy zdać kontekst z klasy do klasy użytkowej Aktywność na dostęp do określonych zasobów aplikacyjnych jak startActivity, sendBroadcast itp

context.sendBroadcast(intent); 
0

Jeśli rozszerzyć przedmiot skargi (główne wejście, które jest wezwany przed swój pierwsza aktywność), wtedy możesz zachować wspólny singleton dla swojej aplikacji.