【发布时间】:2016-10-31 23:22:25
【问题描述】:
我尝试在我的 PC 中做一个调用 java 代码的 chrome 扩展。调用工作正常,代码执行,但我尝试将变量返回到 chrome 扩展但不起作用。我在控制台中看到监听器onDisconect 写了一条控制台消息,但监听器onMessage 没有。我不知道问题所在。
这是我在 chrome 扩展中的代码:
清单 JSON
{
"name": "Prueba native message",
"version": "1.0",
"manifest_version": 2,
"description": "Chrome extension interacting with Native Messaging and localhost.",
"app": {
"background": {
"scripts": ["background.js"]
}
},
"icons": {
},
"permissions": [
"nativeMessaging"
]
}
background.js
var port = chrome.runtime.connectNative('com.app.native');
function message(msg) {
console.warn("Received" + msg);
}
function disconect() {
console.warn("Disconnected");
}
console.warn("se ha conectado");
port.onMessage.addListener(message);
port.onDisconnect.addListener(disconect);
port.postMessage({text: "Hello, my_application"});
console.warn("message send");
这里是我的本地文件。
.bat
cd C:\Users\pc\IdeaProjects\eDNI\out\production\code && java Main
Main.java
public class Main {
public static void main(String argv[]) throws IOException {
System.out.println("{\"m\":\"hi\"");
}
}
在这段代码中,我只尝试向扩展返回一条简单的消息。
【问题讨论】:
标签: javascript java google-chrome google-chrome-extension chrome-native-messaging