这可能听起来很疯狂, 但我无法找到自动在cordova应用程序上截屏的解决方案。
我知道我可以使用
获取并保存模拟器的屏幕截图adb shell /system/bin/screencap -p /sdcard/screenshot.png
adb pull /sdcard/screenshot.png screenshot.png
在终端,我的疯狂问题是。
我可以从nodeJS自动化脚本触发这些命令吗?或者这太过牵强和一个可怕的想法?
答案 0 :(得分:2)
从node.js执行终端命令的最简单方法是使用child_process.exec
const exec = require('child_process').exec;
exec('adb shell /system/bin/screencap -p /sdcard/screenshot.png', (error, stdout, stderr) => {
if (error) {
console.error(`exec error: ${error}`);
return;
}
console.log(`stdout: ${stdout}`);
console.log(`stderr: ${stderr}`);
});
node.js中的内置child_process模块提供了许多函数,如child_process.spawn,child_process.exec,child_process.execFile,可用于执行终端命令或其他脚本文件(.sh,.bat) )。