runtime.connectNative()
Connecte l'extension à une appplication native sur l'ordinateur de l'utilisateur.Cela prend le nom d'une application native en tant que paramètre. Il démarre l'application native et retourne un objet runtime.Port
à l'appelant.L'appelant peut utiliser le Port
pour échanger des messages avec l'application native utilisant Port.postMessage()
et port.onMessage
.L'application native s'exécute jusqu'à ce qu'elle se termine, ou l'appelant appelle Port.disconnect()
, ou la page qui a créé le Port
est détruite. Une fois le Port
est déconnecté, le navigateur mettra quelques secondes à se terminer pour quitter le processus, puis le désactiver s'il ne s'est pas arrêté.
Pour plus d'informations, voir messagerie native.
Syntaxe
var port = browser.runtime.connectNative(
application, // string
);
Paramètres
application
-
string
. Le nom de l'application native à laquelle se connecter. Cela doit correspondre à la propriété "name" dans le fichier manifest de l'application native.
Valeur retournée
Un objet runtime.Port
. Le port que l'appelant peut utiliser pour échanger des messages avec l'application native.
Compatibilité des navigateurs
BCD tables only load in the browser
Exemples
Cet exemple se connecte à l'appplication native "ping_pong" et commence à en écouter les messages. Il envoie également un message à l'application native lorsque l'utilisateur clique sur l'icône d'une action du navigateur :
/*
On startup, connect to the "ping_pong" app.
*/
var port = browser.runtime.connectNative("ping_pong");
/*
Listen for messages from the app.
*/
port.onMessage.addListener((response) => {
console.log("Received: " + response);
});
/*
On a click on the browser action, send the app a message.
*/
browser.browserAction.onClicked.addListener(() => {
console.log("Sending: ping");
port.postMessage("ping");
});
Example extensions
Note :
Cette API est basée sur l'API Chromium chrome.runtime
. Cette documentation est dérivée de runtime.json
dans le code de Chromium code.
Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.