背景 Google已弃用“ActivityManager”类的函数“ getRecentTasks ”。 现在只需要获取当前应用程序打开的应用程序列表。 我甚至在StackOverflow上写了一篇文章,但是我注意到这是不可能的。 问题 我已经做了一个关于它的文章( 在这里 ,另一个是由别人创build的类似文章),并请求重新考虑它,Google决定创build一个新的类,它似乎提供了类似的function(更像是统计,但也可能是有用的),但我不知道如何使用它。 该类被称为“UsageStatsManager”,我的猜测是函数“ queryUsageStats ”做这个工作。 此外,它似乎有一个新的权限(“android.permission.PACKAGE_USAGE_STATS”),这是一个系统权限,但它写道: 声明权限意味着使用API的意图,并且设备的用户可以通过设置应用程序授予权限。 这是关于这个新function的另一个链接。 我发现了什么 我已经看了Android的代码,并注意到“Context”有USAGE_STATS_SERVICE,在JavaDocs中说下一件事: /** * Use with {@link #getSystemService} to retrieve a {@link * android.app.UsageStatsManager} for interacting with the status bar. * * @see #getSystemService * @see android.app.UsageStatsManager * @hide */ public static final String USAGE_STATS_SERVICE = "usagestats"; 奇怪的是,它不仅说“状态栏”,而且packageName不匹配(而应该是“android.app.usage.UsageStatsManager”)。 我也添加了正确的权限: […]