2010-10-20 76 views
0

我有一個發送廣播意圖的Android服務。我試圖在另一個應用程序中獲得這些意圖,這是一項Android服務。在我MyReceiver類服務未收到廣播意圖

<!-- Service --> 
<service android:enabled="true" android:name="...MyService"></service> 

<!-- Receiver --> 
<receiver android:name="...MyReceiver"> 
    <intent-filter> 
     <action android:name="..."></action> 
     <action android:name="..."></action> 
    </intent-filter> 
</receiver> 

這個:我在清單寫了這個

public class ScannerBroadcastReceiver extends BroadcastReceiver { 
    @Override 
    public void onReceive(Context context, Intent intent) { 
     String action = intent.getAction(); 
     // Process action. 
     Log.d(Globals.LOG_TAG, "Intent received."); 
     ... 

不幸的是我從來沒有得到調用的onReceive方法。任何想法爲什麼? 我從另一個測試應用程序啓動此服務,因此將其設置爲Android庫。該服務已正確啓動,但該接收器沒有收到任何內容。任何想法我做錯了什麼? 謝謝!

+0

您可能沒有正確註冊IntentReceiver,或者您的廣播配置錯誤。你也應該發佈代碼的這些部分。 – 2010-10-20 10:42:11

+0

我沒有註冊接收器。它不應該是必要的,當它在清單中...意圖被正確地廣播,因爲它被我寫的其他應用程序接收到... – 2010-10-20 10:52:01

回答

0

我解決了這個問題,我想這是因爲,這個項目被設置爲庫的事實「[包裝] .ScannerBroadcastReceiver。」如果我不這樣設置,則意圖被正確接收。我沒有在任何地方讀過。

0

在清單必須是:機器人:名字=

+0

對不起,我的壞。似乎我忘了將該類重命名爲MyService。在代碼中這是正確的。 – 2010-10-20 11:41:03