android怎样判断一个进程是否结束

不知取啥名 2014-11-26 06:02:25
在android测试程序中,使用
Runtime runtime = Runtime.getRuntime();
Process starter=runtime.exec("uiautomator runtest Test.jar -c com.test");
上面命令启动uiautomator进行测试,uiautomator的测试可能进行N分钟,主程序需要监控这个测试是否完成,即需要监控uiautomator这个进程是否结束。

怎么才能监控这个进程已经结束,然后停止等待?请大神赐教
...全文
664 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
不知取啥名 2014-11-29
  • 打赏
  • 举报
回复
我太笨,说得太绕了…… 我的需求是:在android主测试程序中,启动另一个进程uiautomator去测试相机、音乐等等,等待uiautomator里面的case测试完,uiautomator这个进程会自动结束。我的主测试程序需要等待uiautomator这个进程结束后,再做其他测试
不知取啥名 2014-11-29
  • 打赏
  • 举报
回复
引用 4 楼 shj0605010318 的回复:
就是android SDK tools目录下的一个测试工具,google 开发的一个接口。 我是想在android的测试主程序,调用automator,主程序等待这个进程执行完了,再进行其他操作,可我不知道android里面怎么通过进程名,获取pid,只要能获取到进程名为automator的pid,问题就解决了
这样不行,上面我的问题没有描述清楚。我是想确定android中uiautomator这个进程是否结束。 uiautomator是android SDK的tools下的一个自动化测试工具,该工具可以对手机的相机、音乐等所有应用程序进行启动并测试,所以当前运行的程序不是uiautomator,而是被uiautomator启动的测试程序。 我想通过进程名uiautomator,来判断该进程是否已经结束
  • 打赏
  • 举报
回复
String getCurProcessName(Context context) {
  int pid = android.os.Process.myPid();
  ActivityManager mActivityManager = (ActivityManager) context
    .getSystemService(Context.ACTIVITY_SERVICE);
  for (ActivityManager.RunningAppProcessInfo appProcess : mActivityManager
    .getRunningAppProcesses()) {
   if (appProcess.pid == pid) {

    return appProcess.processName;
   }
  }
  return null;
 }
你可以遍历他,然后打印进程冥看看,这个也是在csdn大神的博客上看到的...
不知取啥名 2014-11-28
  • 打赏
  • 举报
回复
就是android SDK tools目录下的一个测试工具,google 开发的一个接口。 我是想在android的测试主程序,调用automator,主程序等待这个进程执行完了,再进行其他操作,可我不知道android里面怎么通过进程名,获取pid,只要能获取到进程名为automator的pid,问题就解决了
windfury_plus 2014-11-27
  • 打赏
  • 举报
回复
能否操作uiautomator的生命周期,例如在其ondestroy时发广播或使用意图对象intent?
哎,真难 2014-11-27
  • 打赏
  • 举报
回复
这个uiautomator还没用过,哎,,,
不知取啥名 2014-11-27
  • 打赏
  • 举报
回复
不知道,我也刚接触uiautomator

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧