如何从Chrome扩展程序启动Chrome应用程序?

Wal*_*anG 2 javascript google-chrome google-chrome-extension google-chrome-app

通常,应用程序是从chrome:// apps /按钮Chrome应用程序中打开的,但是外部Chrome扩展程序会如何?

我的扩展名:

->manifest.json
->background.js
Run Code Online (Sandbox Code Playgroud)

我的应用:

->manifest.json
->background.js
Run Code Online (Sandbox Code Playgroud)

那么,如何从我的扩展程序启动我的应用程序

Dan*_*err 6

如果您拥有这两个项目,则只需使用消息传递即可在从扩展程序接收消息时打开应用程序窗口.这没有权限警告会拒绝用户管理.https://developer.chrome.com/extensions/messaging

首先,将其添加到两个清单中:

"externally_connectable": { "ids": [ "idoftheotheritem" ] }
Run Code Online (Sandbox Code Playgroud)

然后,在应用中收听消息并创建应用窗口:

chrome.runtime.onMessageExternal.addListener(function() {
  chrome.app.window.create("app.html");
}
Run Code Online (Sandbox Code Playgroud)

最后,从扩展发送:

chrome.runtime.sendMessage("idoftheapp", { launch: true })
Run Code Online (Sandbox Code Playgroud)