获取当前显示的Activity
2013-12-24 12:57
411 查看
转自http://www.eoeandroid.com/thread-42812-1-1.html
获取当前显示的activity
用ActivityManager里面可以获取到当前运行的所有任务,所有进程和所有服务,这是任务管理器的核心。 仔细看getRunningTasks的文档,里面说获取的是系统中"running"的所有task,"running"状态包括已经被系统冻结的task。而且返回的这个列表是按照顺序排列的,也就是说第一个肯定比第二个后运行。
getRunningTasks有个整型参数,表示返回列表的最大个数。那么,我们如果把1作为参数给进去,那么他返回的task就是当前运行的那个task,然后从task中获取到最顶层的activity,这个activity就是当前显示给用户的那个activity了。
ActivityManager am = (ActivityManager) getSystemService(ACTIVITY_SERVICE); ComponentName cn = am.getRunningTasks(1).get(0).topActivity; Log.i(TAG, "pkg:"+cn.getPackageName()); Log.i(TAG, "cls:"+cn.getClassName());
You will need the following permission on your manifest:
<uses-permission android:name="android.permission.GET_TASKS"/>
相关文章推荐
- 模拟物理按键,获取当前显示的Activity名,获取API Level
- android 获取当前屏幕显示的Activity
- 小技巧--获取当前前台显示Activity
- 获取当前显示的Activity
- 获取当前显示的activity
- android 获取当前显示的activity和收起虚拟键盘
- 获取当前正在显示activity的包名
- [Android]adb 命令方式获取当前显示的Activity
- Android中获取当前正在显示的Activity
- 获取Android当前显示(最外层)的Activity的全名
- 获取当前显示页面的Activity名字命令
- 获取用户当前显示的Activity
- 获取当前显示的activity
- 获取当前显示的activity
- 获取当前Activity的View
- iOS 获取当前正在显示的ViewController
- visibleViewController和topViewController 获取当前显示的页面
- 获取当前正在运行的Activity
- iOS 获取当前正在显示的ViewController
- Android查看当前显示哪个Activity