赞
踩
当我用adb写的时候:
adb shell dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp'
我得到错误输出:
'grep' is not recognized as an internal or external command,operable program or batch file.
但如果我将它拆分为两个操作符:
adb shell
dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp'
它工作正常(它提供正在运行的应用程序的主要活动名称).
如果唯一的方法是将它拆分为两个 – 首先进入adb shell,然后运行Inquire,有一种方法可以从c#中执行此操作吗?
在我的代码中,它只执行第一部分(进入shell).
这是我的代码:
public static void startNewProccess(object startInfo)
{
p = new Process();
p.StartInfo = (System.Diagnostics.ProcessStartInfo)startInfo;
p.Start();
p.WaitForExit();
}
public static void getMainActivity()
{
var startInfo1 = new System.Diagnostics.ProcessStartInfo
{
WorkingDirectory = @ADB_FOLDER,WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal,FileName = "cmd.exe",Arguments = "/c" + " adb shell",//adb shell am start -n com.package.name/com.package.name.ActivityName
UseShellExecute = false
};
startNewProccess(startInfo1);
var startInfo2 = new System.Diagnostics.ProcessStartInfo
{
WorkingDirectory = @ADB_FOLDER,Arguments = "/c" + " dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp'",UseShellExecute = false
};
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。