关于如何接收最近使用的应用程序列表(使用棒棒糖UsageStatsManager
或使用ActivityManager
棒棒糖之前)有几个问题。这些都工作正常,我成功地使用它们。
例如,这解释了如何在 android lollipop 和更高版本上获取此列表: How to get list of recent apps with Android API 21 Lollipop?
问题
问题是上述解决方案(和类似的解决方案)不会返回与按下 android 最近应用程序按钮时显示的列表完全相同的列表。上面的解决方案还包含像 android 最近的应用程序屏幕本身这样的视图。
有谁知道如何过滤掉所有不是真正应用程序的应用程序包,或者获得与 android 最近应用程序按钮完全相同的最近应用程序列表?
目前,我手动过滤掉以下包,但可能还有更多,这既不美观也不安全:
val systemPackages = arrayOf(
"com.android.systemui", // recent apps screen - Samsung S9 with oreo
"com.sec.android.app.launcher" // recent apps screen - Samsung S9 with pie
)