首页 > 解决方案 > 如何务实地获取最近使用的应用程序?

问题描述

我正在尝试在我的应用程序中实现添加最近打开的应用程序。我正在尝试使用getRunningAppProcess()但它只给了我我的应用程序详细信息。此外,尝试使用getSystemService(),但没有得到任何线索。找到了UsageStats的upvote解决方案,它也只提供了我的应用程序详细信息。

 Calendar cal = Calendar.getInstance();
        cal.add(Calendar.DAY_OF_YEAR, -5);

        final List<UsageStats> stats =
                mUsageStatsManager.queryUsageStats(UsageStatsManager.INTERVAL_BEST,
                        cal.getTimeInMillis(), System.currentTimeMillis());
        if (stats == null) {
            return;
        }

 <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS"
    tools:ignore="ProtectedPermissions" />

标签: androidandroid-applicationinfoandroid-recents

解决方案


我建议您查看github 上的App usage statistics API,它将允许您收集与应用程序使用相关的统计信息。它提供了比不推荐使用的方法更详细的使用信息getRecentTasks()


推荐阅读