2014-11-05 3 views
0

Я создал два приложения Chrome, и я хочу передать некоторые данные (строковый формат) из одного приложения Chrome в другое приложение Chrome. Цените, если кто-то может помочь мне показать правильный способ сделать это?Как передать данные между двумя приложениями Chrome?

ответ

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 
    } 
    } 
); 
+0

Благодарим за руководство Xan. – adw