2017-02-21 89 views
0

我的应用程序必须获取有关当前在前台运行的应用程序的信息。如何在android中查找当前正在运行的应用程序> LOLLIPOP?

我试图获取所有正在运行proccess:只有

ActivityManager activityManager = (ActivityManager) MyApplication.getAppContext().getSystemService(ACTIVITY_SERVICE); 

List<ActivityManager.RunningAppProcessInfo> processInfoList = activityManager.getRunningAppProcesses(); 

这项工作版本< LOLLIPOP时。我尝试了很多来自Stackoverflow的解决方案,但都没有成功。

有什么想法?

+2

它的棒棒糖...不是lillipop – Akshay

回答

0

UsageStatsManager

您可以得到最新的应用程序中使用这样的:

Calendar calendar = Calendar.getInstance(); 
calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DATE), 0, 0); 

UsageStatsManager usageStatsManager = (UsageStatsManager) context.getSystemService(Context.USAGE_STATS_SERVICE); 
List<UsageStats> usageStatsList = usageStatsManager.queryUsageStats(UsageStatsManager.INTERVAL_DAILY, calendar.getTimeInMillis(), System.currentTimeMillis()); 

,并具有List<UsageStats>你可以得到最大lastTimeUsed一个应用程序来获取当前应用前景。请记住添加权限!

相关问题