android - 如何在android中找到当前的前台 Activity

标签 android android-activity

是否可以在android中找到当前的前台 Activity 。我没有使用ActivityGroup。

最佳答案

我的猜测是您需要查看 ActivityManager class .我简单地看了看文档,这就是我想出的。

有一个函数:

public List<ActivityManager.RunningTaskInfo> getRunningTasks (int maxNum)

来自Android docs :

返回当前正在运行的任务列表,最新的任务排在第一位,较旧的任务按顺序排列。请注意,“正在运行”并不意味着任务的任何代码当前已加载或处于 Activity 状态——该任务可能已被系统卡住,以便在下一次被带到前台时可以以其先前的状态重新启动。

我的想法是,如果您传入 maxNum=1,它应该为您提供最近运行的任务,即。最重要的任务。每个 ActivityManager.RunningTaskInfo 都有一个名为 topActivity 的属性。

public ComponentName topActivity 

来自Android docs : 任务历史堆栈顶部的 Activity 组件。这就是用户当前正在做的事情。

关于android - 如何在android中找到当前的前台 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8131909/

相关文章:

java - 代码适用于 Activity 但不适用于 Fragment

java - 将另一个 Activity 中的项目添加到 ExpandableListView

android字符串资源与应用程序大小

android - 动态文本大小根据平板电脑变化

android - Activity被后退按钮关闭时返回 Intent 结果

android - getString(R.string.res_name) 给出 java.lang.IndexOutOfBoundsException

java - 在 Android (JAVA) 中对字符串使用 XPath

android - 应用程序本地化的语言库?

java - Android(Eclipse)找不到google-play-services_lib.apk尝试了多种解决方案

android - 在apache服务器上上传文件