如何知道某个进程是否在Android设备中运行?

时间:2015-08-19 09:41:18

标签: android linux shell jscript testcomplete

我们正在开发TestComplete自动化工具,用于自动化Android设备的测试脚本。如何使用shell脚本或TestComplete脚本了解Android设备中运行的所有进程?

1 个答案:

答案 0 :(得分:1)

列出了为TestComplete 检测的所有正在运行的进程

function Test()
{
  Mobile.SetCurrent("emulator-5554");
  var device = Mobile.Device();

  for (var i = 0; i < device.ChildCount; i++)
  {
    Log.Message(device.Child(i).ProcessName);
  }
}

要列出所有正在运行的进程,可以使用adb shell ps命令。您可以从TestComplete运行它,如下所示:

function Test()
{
  Mobile.SetCurrent("emulator-5554");

  var str = Mobile.Device().ShellExecute("ps");
  Log.Message("See Additional Info", str);
}

但是你需要过滤命令的输出,因为它看起来像:

USER     PID   PPID  VSIZE  RSS     WCHAN    PC        NAME

root      1     0     9128   808   c02b4929 0806c150 S /init

root      2     0     0      0     c023172d 00000000 S kthreadd

system    1238  949   599324 84032 ffffffff b7503355 S system_server

u0_a12    1438  949   520712 56672 ffffffff b7503355 S com.android.systemui

u0_a2     1457  949   491816 32504 ffffffff b7503355 S android.process.acore