【问题标题】:Executing command 'ADB devices' on electron js in cmd line using exec()使用 exec() 在 cmd 行中的电子 js 上执行命令“ADB 设备”
【发布时间】:2024-01-06 13:24:01
【问题描述】:

我用的是electron js,有点新手。

据我所知,我们可以使用所有npm 包,就像我们可以在nodejs 中使用一样。 所以,我在其中使用'node-command-line' 包。

现在,当我使用'electron-builder' 在mac 中构建代码时,当我使用npm start 启动应用程序时,adb devices 之类的命令运行良好。但是在 mac 中构建它之后,它向我抛出了一个错误,说 adb devices 命令找不到相同的进程。

PFB 代码:

var cmd     = require('node-command-line'),Promise = require('bluebird');
function runSingleCommandWithoutWait() {
    let listener=cmd.run('adb devices');
    listener.then(function(value_listener){  
        //SOME FUNCTION
    });
   }

当我 build-l 时,它在 linux 中有效,但 build -m 在 mac 系统中无效。它显示adb devices command not found

这会在我默认在/bin/sh 中运行该命令后执行。两个系统中的 adb 路径已设置为适用于每个系统。

如何让命令在 mac 中运行? 任何帮助将不胜感激

【问题讨论】:

  • 您是否尝试过指定 adb 的完整路径

标签: javascript node.js electron electron-builder electron-packager


【解决方案1】:

您是否考虑过使用adbkit

来自 adbkit GitHub:

adbkit 是 Android Debug Bridge 服务器的纯 Node.js 客户端。它既可以用作您自己的应用程序中的库,也可以简单地用作与您的设备一起玩的便捷实用程序。

支持 adb 命令行工具的大部分功能(包括推/拉文件、安装 APK 和处理日志)

【讨论】:

    最近更新 更多