3

我需要一些代码来获取一个对象或一个数组列表,其中包含当前在 android 的最近堆栈中的那些应用程序的所有名称。也许android不允许这样做(出于安全原因),所以即使需要root权限的代码对我来说也可以。

4

1 回答 1

1

解决方案1:

使用getRunningAppProcesses,它将返回一个对象列表,这些RunningAppProcessInfo对象将为您提供有关每个正在运行的应用程序的一些数据。您可以检索到的有关应用程序的信息之一是它的importance,它可以有一个值IMPORTANCE_FOREGROUND,表明该进程是当前活动的。

一些指南也适合您。

IMPORTANCE_FOREGROUND

RunningAppProcessInfo

解决方案 2: 我还在开发一个用于锁定应用程序的应用程序。看来您需要要求用户提供此设置。我用这个活动来检查哪个应用程序在前台,但我猜它也可以根据你的工作。

Settings.ACTION_USAGE_ACCESS_SETTINGS

在我的手机上写着

允许应用监控您使用的其他应用以及使用频率,并识别您的服务提供商、语言和其他使用数据。

UsageStatsManager有一些有用的方法可以满足你的需要。

我认为您需要向您的用户询问这个问题,如果用户同意。您可以使用访问最近的应用程序。

于 2017-08-31T23:27:26.157 回答