2011-11-08 63 views
1

我有清單文件中的兩個接收器。一個是工作不是。我可以在清單中有多個接收器嗎?androidmanifest多個接收器

<receiver android:name=".services.MobileViaNetReceiver"> 
    <intent-filter> 
     <action android:name="android.intent.action.BOOT_COMPLETED"></action> 
    </intent-filter> 
</receiver> 

<receiver android:name=".services.SessionManager"> 
    <intent-filter> 
     <action android:name="android.intent.action.SCREEN_OFF"></action> 
     <action android:name="android.intent.action.ACTION_SHUTDOWN"></action> 
     <action android:name="android.intent.action.SCREEN_ON"></action> 
    </intent-filter> 
</receiver> 

UPDATE >>>>>>>>>>>>>>>>>>>>>>

ACTION SHUTDOWN爲我工作。下面是SessionManager

public class SessionManager extends BroadcastReceiver{ 
Date timeOff; 
Date timeOn; 


@Override 
public void onReceive(Context context, Intent intent) {  

    if("android.intent.action.SCREEN_OFF".equals(intent.getAction())) { 
     timeOff = Calendar.getInstance().getTime(); 
    } 

    if("android.intent.action.ACTION_SHUTDOWN".equals(intent.getAction())) { 
     Functions.logout(context); 
    } 

    if("android.intent.action.SCREEN_ON".equals(intent.getAction())) { 
     timeOn = Calendar.getInstance().getTime(); 
     long diffInMs = timeOn.getTime()-timeOff.getTime(); 

     // convert it to Minutes 
     long diffInMins = TimeUnit.MILLISECONDS.toMinutes(diffInMs); 

     if ((int) (diffInMins) > 15) { 
      Functions.logout(context); 

     } else { 
      Log.i("MobileViaNetReceiver", "User still active"); 
     } 
    } 
} 

}

+0

但SCREEN_OFF和SCREEN_ON也沒有工作對我來說 –

回答

0

嘗試增加你的接收機的意圖過濾器不工作的內部下面。

<category android:name="android.intent.category.DEFAULT" /> 
+0

並沒有爲我工作。 – user533844