检查是否安装了chrome扩展

时间:2016-06-07 22:02:48

标签: javascript google-chrome google-chrome-extension

我在Chrome网上商店发布了Chrome扩展程序。

现在我想从我网站上的页面实现内联安装。

我关注此chrome tutorial

所以我将我的网站添加为Chrome扩展程序的经过验证的网站,内联安装工作正常。

我遇到的问题是如何检查用户是否已安装我的扩展程序。

我想首先检查用户是否安装了扩展程序,如果是,则不显示安装按钮,否则显示它。

在内联安装的Chrome教程中,通过选中chrome.app.isInstalled

explanation如何检查已安装的扩展程序

但即使安装了扩展程序,也始终返回 false 。 我找不到使用此属性的任何详细说明。我想知道它是如何结束我正在检查哪个扩展?它是否来自<link>中的head

<link rel="chrome-webstore-item" href="https://chrome.google.com/webstore/detail/itemID">

任何帮助,如何正确检查用户是否安装了我的扩展程序?

1 个答案:

答案 0 :(得分:2)

我在YouTube上看到了一个安全视频,我再也没有链接,但我认为这是一个DefCon演讲,或者其他什么......它显示了Chrome如何允许从浏览器URL访问扩展资源该资源包含在manifest.json的{​​{3}}扩展程序列表中。这可能不是一件好事......

所以你可以:

  • 创建一个图像,其中包含已安装且处于活动状态的扩展程序。
  • 将此图片添加到您的扩展程序,并将其添加到manifest.json列表下的web_accessible_resources
  • 然后在您的网页上链接到它。只有在已安装

    的情况下安装了扩展程序,才能看到该图像。

    <img src="chrome-extension://{extension-id}/extension-enabled.png">
    
  • 使用javascript检查并查看图片是否已加载。如果没有,请将其替换为显示扩展名已禁用或未安装的网址。