获取在前台打开的应用程序后奥利奥



是否可以识别在前台打开的应用程序,我正在寻找适用于Android 8.0及以上版本的解决方案。

如果没有解决方案,我可以通过root使用adb shell命令ps并获取现在正在使用的应用程序吗?

public String getCurrentAppPackageName(Context con){
ActivityManager activityManager = ((ActivityManager) con.getSystemService(Activity.ACTIVITY_SERVICE));
if(activityManager!=null) {
List<RecentTaskInfo> recentTaskInfos = activityManager.getRecentTasks(20, ActivityManager.RECENT_IGNORE_UNAVAILABLE);
if (recentTaskInfos != null && recentTaskInfos.size() > 0) {
return recentTaskInfos.get(0).baseIntent.getComponent().getPackageName();
}
}
return null;
}

为此,您的应用程序需要具有您在运行时请求的USAGE_STATS特殊权限。

相关内容

最新更新