使用child_process模块,我试图生成应该请求权限的进程,但是MacOS请求父级而不是生成子级的权限。
例如,当我在终端中运行下面的代码时,MacOS将请求"Terminal.app“而不是子程序的权限。exec/execFile函数也会发生同样的情况。
现实生活中的例子是从Google中删除麦克风权限,在终端中运行下面的代码,然后转到google。MacOS将要求Terminal.app的麦克风许可,而不是Google。
是否可以使用child_process模块并让MacOS请求子模块的权限?
const { spawn } = require("child_process");
const APP_PATH = '/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome';
spawn(APP_PATH, [], {
detached: true,
stdio: "ignore",
}).unref();发布于 2021-10-03 06:50:36
我相信你的答案在这里;
https://dzone.com/articles/understanding-execfile-spawn-exec-and-fork-in-node
您有其他选项,如execFile、exec、fork等,而不是spawn。
叉子应该不带附件地运行。
发布于 2021-10-04 03:41:42
打开Chrome通过苹果脚本工程。
const { spawn } = require("child_process");
spawn('osascript', ['-e', 'tell application "Google Chrome" to activate'],
{
detached: true,
stdio: "ignore",
}).unref();

https://stackoverflow.com/questions/69315700
复制相似问题