2011-06-02 26 views
3

我想在安裝新應用程序時收到通知。BroadcastReceiver安裝新應用程序

IntentFilter newAppFilter = new IntentFilter(Intent.ACTION_PACKAGE_ADDED); 
newAppFilter.addAction(Intent.ACTION_PACKAGE_CHANGED); 
newAppFilter.addAction(Intent.ACTION_PACKAGE_INSTALL); 
newAppFilter.addAction(Intent.ACTION_PACKAGE_REPLACED); 
getApplicationContext().registerReceiver(newAppReceiver, newAppFilter); 


public static BroadcastReceiver newAppReceiver = new BroadcastReceiver() { 
    public void onReceive(Context context, Intent intent) {  
      Log.e("Broadcast","Received"); 
     } 
}; 

但我無法獲取任何日誌。任何人都可以幫助我?

回答

9

嘗試將數據方案添加到您的IntentFilter

newAppFilter.addDataScheme("package"); 

參考:IntentFilter.addDataScheme()文檔

如果沒有方案被包括,那麼 意圖將匹配只有當它包含 任何數據。

+0

它現在的工作。謝謝你的幫助。 – koder 2011-06-02 11:25:28