2012-06-07 126 views
1

服務發送該廣播:廣播和意圖過濾

Intent _broadcast = new Intent(); 
_broadcast.setAction("it.lorenzoff.uselesssoftware"); 
sendBroadcast(_broadcast); 

爲什麼我在不同的包活動不啓動?在這第二個包中,我宣佈了以下活動:

<activity 
    android:name=".FunnyActivity" 
    android:launchMode="singleInstance" 
    android:clearTaskOnLaunch="true" >   
    <intent-filter> 
    <action android:name="it.lorenzoff.uselesssoftware" /> 
    </intent-filter>  
</activity> 

我是否需要聲明BroadcastReceiver來管理此意圖?但我只想開始一項活動...

回答

1

是的。您需要製作一個捕獲此意圖的BroadcastReceiver,然後啓動該活動。

現在你的調用sendBroadcast(意圖),但你的活動的意圖過濾器不會得到這個。它只獲得startActivity(intent)。