0

我的问题是在主题上。我需要能够测试是否安装了基于附加 sdk 的扩展,以便以编程方式打开它。我该怎么做?基本上,我有一个 JS 脚本检查用户的网络浏览器,如果安装了我的扩展,我想重定向到一个特定的 url,这将启动扩展的打开。我通过 XUL 扩展阅读了这一点,向任何图像添加 contentaccessible=yes 并在加载时测试它给了我们答案,但似乎我们无法使用基于附加 sdk 的...

任何想法 ?

无论如何感谢您阅读我:)

4

1 回答 1

0

您应该查看 AddonManager 的文档:

https://developer.mozilla.org/en-US/docs/Addons/Add-on_Manager/AddonManager

这是您可以用来开始的代码片段:

const { Cu } = require("chrome");

let AddonManager = Cu.import("resource://gre/modules/AddonManager.jsm").AddonManager;

AddonManager.getAddonsByTypes(["extension"], function(addons) {
    var addonData = [];

    for (let i in addons) {
        let cur = addons[i];
        addonData.push({
            id: cur.id.toString(),
            name: cur.name,
        });
    };
    console.log(JSON.stringify(addonData, null, '   '));
});

我也在 Add-on Builder 上托管了这段代码:

https://builder.addons.mozilla.org/package/44810/latest/

编辑: Builder 已停产,将在一个月内下线。

于 2012-12-20T23:49:16.510 回答