Firefox addon NSCategoryManager的实际用途?

Firefox addon NSCategoryManager的实际用途?,firefox-addon,xpcom,Firefox Addon,Xpcom,我正在做一个配置文件切换插件,遇到了 我想知道这是什么?它有什么实际用途 我读了MDN文章,但想不出它有什么用途。NSCategoryManager的目的是向类别中添加条目(通常是XPCOM组件)。管理器本身仅提供注册机制,类别的使用方式完全取决于读取类别条目的代码。例如,在Firefox启动时需要激活的组件就在这里 大多数扩展不应再明确使用nsCategoryManager,添加类别条目可以通过chrome.manifest中的一行完成: category profile-after-chan

我正在做一个配置文件切换插件,遇到了

我想知道这是什么?它有什么实际用途


我读了MDN文章,但想不出它有什么用途。

NSCategoryManager的目的是向类别中添加条目(通常是XPCOM组件)。管理器本身仅提供注册机制,类别的使用方式完全取决于读取类别条目的代码。例如,在Firefox启动时需要激活的组件就在这里

大多数扩展不应再明确使用
nsCategoryManager
,添加类别条目可以通过
chrome.manifest
中的一行完成:

category profile-after-change MyComponent @foobar/mycomponent;1
当扩展被激活时,这将隐式调用
nsCategoryManager.addCategoryEntry()

编辑:出于好奇,我决定在Firefox源代码中搜索
nsCategoryCache
,看看还有哪些类别。列表如下:

  • 实例的“内容策略”
  • “网络内容嗅探器”
    “内容嗅探器服务”
    用于实例
  • “真空参与者”
    用于实例
  • “书签观察者”
    用于实例
  • 实例的“历史观察者”
  • “每日空闲”
    ,用于由管理的观察员

这些只是正在缓存和监视更改的类别,完整的列表要长得多。

感谢您的解释。我觉得这对我来说有点复杂,哈哈。实际上,这可以用来监视本地文件被修改吗?我在哪里可以找到完整的列表?@Noitidart:查看本地文件不是Firefox代码需要的东西,因此如果它被实现,我会非常惊讶。此外,类别是简单的东西,它们的名称是一个常规字符串,无法在其中指定文件名。至于完整的列表:请随意搜索代码。没有文档在一个地方列出所有类别,你应该永远不需要使用它们中的大多数。啊,好的,谢谢你!你能不能给我一个复制粘贴的例子,我可以用NSCategoryManager(当然它不会使用chrome.manifest)我只是不明白,觉得这是如此powerful@Noitidart:不,我不会。我回答了你的问题,甚至还有一个与示例的文档链接。剩下的就看你了。这不是复制粘贴到scratchpad,我也不知道如何把这一切拼凑在一起。没关系,我希望人们能像我帮助别人那样帮助我。但是你已经花了很多时间了谢谢我真的很感激。(但是如果你改变主意,我能得到的一件事就是C++的DLL火狐,我还没弄清楚,每个人都说有很多例子,但是我不能剖析它,让它为我工作。)