2011-06-02 28 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