Ошибка «Нативный хост вышел» для IPC в Chrome, но не в Firefox - PullRequest
0 голосов
/ 21 октября 2019

У меня проблемы с собственным обменом сообщениями между веб-расширением и сопутствующим приложением, работающим как собственный двоичный файл. Плагин Javascript, по сути, делает это

let port = chrome.runtime.connectNative(applicationName);
port.onMessage.addListener(passOnResult);
// ...
// later:
port.postMessage({ ...message, "tab_id": sender.tab.id, });

Связь между двумя компонентами прекрасно работает в MacOS и в Windows с Firefox. Сбой только для Chrome (64-разрядная версия) в Windows 7 (64-разрядная версия) и даже тогда только для некоторых установок (но надежно для них). Вместо выполнения обратного вызова мы слышим только

"Unchecked runtime.lastError: Native host has exited.", source: chrome-extension://mafj...

Это означает, что нативному приложению не удалось отправить полное ответное сообщение до того, как прервался канал связи. Что может вызвать проблемы с этой базовой настройкой в ​​Chrome, но не в Firefox?

...