如何检测用户何时在Android设备上启动应用程序

时间:2014-01-14 09:58:35

标签: android android-fragments broadcastreceiver android-service android-launcher

我正在尝试开发一个应用程序来检测设备上安装的每个应用程序的启动。我想开发像this.

这样的场景

对它进行修改logcat仅支持4.0以下(ICS)版本,我的要求是针对上述ICS版本。我在游戏商店看到了许多应用程序,如Smart appLock。如何创建支持所有版本的这种应用程序从2.2开始的android。

1 个答案:

答案 0 :(得分:0)

我认为您可以跟踪当前正在运行的应用程序:

final   ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
final List<RunningTaskInfo> recentTasks = activityManager.getRunningTasks(Integer.MAX_VALUE);

    for (int i = 0; i < recentTasks.size(); i++) 
    {
        Log.d("Executed app", "Application executed : " +recentTasks.get(i).baseActivity.toShortString()+ "\t\t ID: "+recentTasks.get(i).id+"");         
    }

一旦您的民意调查在上面的列表中添加了一个新的应用程序条目,您就可以获得所需的结果。

相关问题