代码如下:
QProcess *p = nullptr;
if(p != nullptr)
{
p->close();
delete p;
p =nullptr;
}
p = new QProcess(this);
p->start("cmd"); //启动系统cmd
p->waitForStarted(); //等待启动
p->write(shell.toStdString().data()); //adb shell命令
p->write(command.toStdString().data()); //adb shell进去之后你要输入的命令
命令后面都需要加上\n,比如QString shell = "adb shell\n"。
对于QT调用执行脚本同样适用,至于操作方法,可以先在windows的cmd输入一遍,然后照着上面的代码,给它write()进去就行了,下面是调用一个脚本的例子:
p = new QProcess;
p->start("cmd");
p->waitForStarted();
p->write("adb push 脚本路径 存放路径\n"); //推脚本到存放路径
p->write("adb shell\n");
p->write("cd 存放路径\n");
p->write("chmod 777 脚本名\n"); //给脚本赋予权限
p->write("./脚本名\n"); //运行脚本