Android-如何获得在后台获得当前正在展示的activity?

需求定制 需求定制 主题:1050 回复:2283

Android-如何获得在后台获得当前正在展示的activity?

甜柠檬 发布于 2017-02-06 字数 137 浏览 1210 回复 2

在做程序测试的时候,需要知道当前正在展现的页面是什么,然后根据具体的页面执行不同的测试。

不知道这样是否可以实现,如何实现?

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(2

虐人心 2017-04-14 2 楼

首先加个权限:
<uses-permission android:name="android.permission.GET_TASKS"></uses-permission>
代码:

ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
List<RunningTaskInfo> runningTasks = manager .getRunningTasks(1);
RunningTaskInfo cinfo = runningTasks.get(0);
ComponentName component = cinfo.topActivity;
Log.e("currentactivity", component.getClassName());
得到的是当前activity的包加类名

虐人心 2017-02-08 1 楼

要是仅仅想获得当前activity进行测试,可以使用Robotium 去解决这个问题。他可以获得当前的activity,对当前的空间进行测试。

同时他的代码也是开源的