2

服务是否可以检查以下内容

  1. 应用程序是否正在运行?
  2. 如果是,应用程序运行是后台还是前台?请提出一些方法来做到这一点。
4

2 回答 2

2

您需要使用getRunningTasks来了解应用程序是否正在运行。

从文档:

公共列表 getRunningTasks (int maxNum)

返回当前正在运行的任务的列表,最近的是第一个,之后是较旧的。

为此,您应该将其包含在您的 AndroidManifest.xml 中

<uses-permission android:name="android.permission.GET_TASKS" />

关于应用程序运行后台/前台请参阅此链接

于 2012-04-23T16:18:33.513 回答
0
List<RunningAppProcessInfo> apps = ((ActivityManager) _context.getSystemService(Context.ACTIVITY_SERVICE)).getRunningAppProcesses();

...这就是您获取每个正在运行的应用程序的方式,只需使用“apps.get(i).processName”或 sth 来获取您可以检查的进程名称。

<uses-permission android:name="android.permission.GET_TASKS" />在您的清单中使用,以确保您拥有正确的权限。

于 2012-04-23T16:23:19.327 回答