У меня проблема с тем, что мое расширение chrome при попытке установить связь с собственным приложением хоста возвращает эту ошибку. В частности, при передаче сообщения helo, чтобы убедиться, что приложение хоста установлено.
Ошибка: вызов формы runtime.sendNativeMessage (строка, строка, функция) не соответствует определению runtime.sendNativeMessage (строковое приложение, объектное сообщение, необязательная функция responseCallback)
в chrome-extension: //lafoonpfkflnebpoacdbcojcbdhebifh/background.js: 35: 20
Я попытался передать ранее существующий объект, объект, определенный в sendNativeMessage, такой как sendNativeMessage (строка, {объект: "объект"}, функция), и объект, недавно определенный через новый объект.
РЕДАКТИРОВАТЬ: я также пробовал var nativeMessageObject = {};
Мне кажется, что я, должно быть, лаю не на то дерево или что-то здесь. Ниже мой код в настоящее время обрезан только до соответствующей области.
console.log("Recieved helo host app. Attempting to contact host app.")
var nativeMessageObject = new Object();
nativeMessageObject.data = "helo";
chrome.runtime.sendNativeMessage('appName', nativeMessageObject, function(response) {
console.log("Host app responded: " + response)
switch (response) {
case "ehlo":
console.log("Host app responded with ehlo")
sendResponse({
data: "ehlo host app"
})
break;
default:
console.log("Error: " + Json.stringify(chrome.runtime.lastError))
sendResponse({
data: "Error: " + Json.stringify(chrome.runtime.lastError)
})
break;
}
})
Буду признателен за любую помощь.
РЕДАКТИРОВАТЬ: теперь попробовал на 3 разных машинах, ошибка одинакова во всех случаях.