首页 > 解决方案 > Chrome 扩展原生消息在 MacOS 上不起作用

问题描述

我正在构建一个使用本机消息传递的 Chrome 扩展程序,但是在普通庄园中运行它时遇到了问题。

如果我正常启动 Chrome,本机消息不会通过,但是如果我通过它的二进制文件(位于/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome)启动 Chrome,本机消息将通过。

关于发生了什么的任何想法?

标签: google-chromegoogle-chrome-extensionchromium

解决方案


从Native Messaging 文档中记下这一点:

在 OS X 和 Linux 上,本地消息传递主机的清单文件的位置因浏览器(Google Chrome 或 Chromium)而异。系统范围的本机消息传递主机在固定位置查找,而用户级本机消息传递主机在用户配置文件目录中 称为 NativeMessagingHosts 的子目录中查找。

OS X (system-wide)
Google Chrome: /Library/Google/Chrome/NativeMessagingHosts/com.my_company.my_application.json
Chromium: /Library/Application Support/Chromium/NativeMessagingHosts/com.my_company.my_application.json
OS X (user-specific, default path)
Google Chrome: ~/Library/Application Support/Google/Chrome/NativeMessagingHosts/com.my_company.my_application.json
Chromium: ~/Library/Application Support/Chromium/NativeMessagingHosts/com.my_company.my_application.json

推荐阅读