我想知道一个应用程序(不是我的应用程序,而不是其他应用程序,例如gmail)是否正在运行。是否可以使用Kotlin?
答案 0 :(得分:1)
是。非常有可能检测除您以外的应用程序是否正在运行。您需要使用ActivityManager来获取信息。您可以使用以下代码段获取所需的列表:
val pm = this.getPackageManager()
val intent = Intent(Intent.ACTION_MAIN, null)
intent.addCategory(Intent.CATEGORY_LAUNCHER)
val list = pm.queryIntentActivities(intent, PackageManager.PERMISSION_GRANTED)
for (rInfo in list) {
Log.w("List of Installed Applications:", rInfo.activityInfo.applicationInfo.loadLabel(pm).toString())
}
如果您访问上述链接,则会发现所有可用的嵌套类here。例如,要获取正在运行的任务,请像this一样使用RunningAppProcessInfo
。您还可以检查它是否在背景,前景等中。请参考此link以获取示例代码。