Связь между Chrome-пакетом и расширением Chrome?

Мне нужно объединить функциональные возможности, доступные только в пакетном приложении Chrome (доступ к syncFileSystem) и функции, доступные только в расширении Chrome (вводя script на сторонний сайт).

Похоже, что ни упакованное приложение, ни расширение не могут достичь обеих этих вещей, поэтому я теперь рассматриваю возможность добиться того, что мне нужно, с помощью отдельного упакованного приложения и расширения.

Я вижу, что документация Chrome объясняет, как два расширения могут связываться через chrome.runtime.onMessageExternal.addListener и chrome.runtime.sendMessage, но ничего не сообщают о пакетах приложений и расширений.

Кто-нибудь знает, разрешено ли это? Есть ли какая-либо документация или рабочий пример?

Ответ 1

Да, это возможно. Пример кода в документации, которую вы связываете, работает для любой комбинации приложения и расширения.

Документация по расширению для chrome.runtime.sendMessage гласит:

Отправляет одно сообщение в прослушиватели событий onMessage внутри расширения (или другое расширение/приложение).

Сообщения работают одинаково в обоих расширениях и приложениях, и, похоже, они полностью совместимы; просто используйте идентификатор для получателя или приложения. Если вы посмотрите на документы для версии приложения chrome.runtime.sendMessage, вы увидите, что он идентичен версии расширения.