2

我正在构建一个打包的 chrome 应用程序(因为我想访问 chrome.socket,所以需要它)。我有一个网站,我想通过单击链接调用我的应用程序(如果已安装或要求用户安装它)。这可能吗 ?无法为此工作流程找到任何简单的方法。

4

2 回答 2

3

url_handlers可能是实现这一目标的最佳方式。

您还可以使用 externally_connectable 清单属性声明您的网站可以连接到您的应用程序,然后从您的网页调用chrome.runtime.sendMessage或在应用程序的处理程序中处理它。chrome.runtime.connectchrome.runtime.onMessage

哪个更适合取决于您的需求。这url_handlers是一种更简单的方法,但它会将链接上的 URL 永久分配到您的应用程序,因此如果安装了该应用程序,您将无法将其用于其他任何事情。这externally_connectable是一种更难的方法,但它可以在您的网站和应用程序之间实现更精细的双向通信。

如果需要,您甚至可以结合使用这两种方法:使用该url_handlers功能启动应用程序,然后在应用程序启动并运行后建立返回网站的通信渠道。

于 2013-10-23T23:35:32.987 回答
2

应用程序现在(我相信从 Chrome 31开始)可以通过在其清单中添加url_handlers并检测导致应用程序在chrome.app.runtime.onLaunched事件中启动的 url来注册以处理 url 。如果应用程序没有启动,您的托管网站将被加载,并且可以使用chrome.webstore.install进行内联安装。

于 2013-10-22T19:41:18.427 回答