Mac 上的 Chrome 本机消息 API

Big*_*man 3 macos google-chrome-extension

我正在浏览 Chrome Native Messaging API 指南,

https://developer.chrome.com/extensions/nativeMessaging

示例主机的清单如下所示,

{
  "name": "com.my_company.my_application",
  "description": "My Application",
  "path": "C:\\Program Files\\My Application\\chrome_native_messaging_host.exe",
  "type": "stdio",
  "allowed_origins": [
    "chrome-extension://knldjmfmopnpolahpmmgbagdohdnhkik/"
  ]
}
Run Code Online (Sandbox Code Playgroud)

其中“path”指的是 Chrome 扩展程序将与之通信的应用程序。在 Windows 上,Python 脚本或 exe 文件都可以运行并被执行。在 Mac OS 上,我只能使用 shell 脚本或 python 脚本来工作。我无法执行 .app。

我无法工作的是,

"path": "/Applications/Skype.app"
Run Code Online (Sandbox Code Playgroud)

当我"chrome.runtime.connectNative(hostName)"在扩展中执行此操作时,错误信息是“本机主机已退出”。感谢帮助!

小智 5

在 Windows 上,Python 脚本或 exe 文件都可以运行并被执行。在 Mac OS 上,我只能使用 shell 脚本或 python 脚本来工作。我无法执行 .app。

.app是一个目录,而不是文件。使用您的示例,Skype 的实际可执行文件可能位于/Applications/Skype.app/Contents/MacOS/Skype.

右键单击.appFinder 中的 a 并选择“显示包内容”以查看内部。