我正在构建一个应该连接到控制台应用程序的chrome扩展。
这是我的清单文件:
{
"name": "my extension",
"version": "0.0.1",
"manifest_version": 2,
"description": "my extension",
"icons": {
"16": "icons/icon16.png",
"48": "icons/icon48.png",
"128": "icons/icon128.png"
},
"default_locale": "en",
"permissions": [
"nativeMessaging"
],
"content_scripts": [
{
"matches": [
"<all_urls>"
],
"js": [
"src/inject/inject.js"
]
}
]
}
我在inject.js中有这一行:
chrome.runtime.connectNative("org.my_company.my_application");
因为未定义connectNative而抛出类型错误,当我拥有本机消息传递权限时,怎么可能未定义?我该怎么做才能解决问题?
顺便说一句,我已经看到了这个问题:Google Chrome Native Messaging Example returns: Uncaught TypeError: chrome.runtime.connectNative is not a function但问题是Chrome应用程序,我正在构建扩展程序。
我的Chrome版本在Windows 7 x64上是64。
答案 0 :(得分:2)
事实证明,内容脚本中不允许使用本机消息传递,应该在后台页面中完成。