2012-07-20 18 views
2

我想註冊一個在Android manifest.xml中有許多操作的接收器。在manifest.xml中註冊一個包含許多操作的接收器

IntentFilter intentFilter = new IntentFilter(); 
intentFilter.addAction(Intent.ACTION_PACKAGE_ADDED); 
intentFilter.addAction(Intent.ACTION_PACKAGE_INSTALL); 
intentFilter.addDataScheme("package"); 
registerReceiver(installReceiver,intentFilter); 

我無法弄清楚。怎麼做?

回答

3

嘗試爲:

在清單
<receiver android:name="getBroadcast" android:enabled="true" > 
    <intent-filter> 
    <action android:name="android.intent.action.PACKAGE_ADDED"></action> 
    <action android:name="android.intent.action.PACKAGE_CHANGED"></action> 
    <action android:name="android.intent.action.PACKAGE_INSTALL"></action> 
    <data android:scheme="package"></data> 
    </intent-filter> 
</receiver> 
2
 <receiver 
      android:name="your receiver class" > 
      <intent-filter> 
       <action android:name="android.intent.action.PACKAGE_ADDED"/> 
       <action android:name="android.intent.action.PACKAGE_INSTALL"/> 
       <!--more action--> 
       <data android:scheme="package"/> 
      </intent-filter> 
     </receiver> 
+0

好,謝謝,但如何添加intentFilter.addDataScheme( 「包」);? – 2012-07-20 07:24:04

+1

在intent-filter標記中添加 2012-07-20 07:43:12

1

使用Intent-Filter標籤下<reciever>

<receiver android:name=".YourReciever"> 
<intent-filter> 
    <action android:name="android.intent.action.PACKAGE_ADDED" /> 
    <action android:name="android.intent.action.PACKAGE_INSTALL" /> 
    <action android:name="your action3" /> 
</intent-filter> 
</reciever> 
相關問題