Я создал два приложения Chrome, и я хочу передать некоторые данные (строковый формат) из одного приложения Chrome в другое приложение Chrome. Цените, если кто-то может помочь мне показать правильный способ сделать это?Как передать данные между двумя приложениями Chrome?
0
A
ответ
0
Это вопрос RTFM.
Из Messaging documentation (обратите внимание, что он упоминает расширения, но это работает для приложений):
В дополнение к отправке сообщений между различными компонентами в расширении, вы можете использовать Messaging API для взаимодействия с другими расширениями. Это позволяет публиковать открытый API, который могут использовать другие расширения.
Вам необходимо отправлять сообщения с помощью chrome.runtime.sendMessage
(используя идентификатор приложения) и получить их с помощью chrome.runtime.onMessageExternal
события. При необходимости могут быть установлены долгоживущие соединения.
// App 1
var app2id = "abcdefghijklmnoabcdefhijklmnoab2";
chrome.runtime.onMessageExternal.addListener(
// This should fire even if the app is not running, as long as it is
// included in the event page (background script)
function(request, sender, sendResponse) {
if(sender.id == app2id && request.data) {
// Use data passed
// Pass an answer with sendResponse() if needed
}
}
);
// App 2
var app1id = "abcdefghijklmnoabcdefhijklmnoab1";
chrome.runtime.sendMessage(app1id, {data: /* some data */},
function(response) {
if(response) {
// Installed and responded
} else {
// Could not connect; not installed
// Maybe inspect chrome.runtime.lastError
}
}
);
Благодарим за руководство Xan. – adw