如果存在 install.rdf,为什么附加图标会消失



安装插件后,我在Firefox中看不到工具栏图标。我在开发过程中遇到了这个问题。如果存在install.rdf文件,则附加组件的图标不会出现在 Firefox 工具栏中。但是,如果没有install.rdf文件,它绝对可以正常工作。怎么了?

<?xml version="1.0" encoding="UTF-8"?>
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
     xmlns:em="http://www.mozilla.org/2004/em-rdf#">
  <Description about="urn:mozilla:install-manifest">
    <em:id>extensionName@myDomain.com</em:id>
    <em:version>1.23</em:version>
    <em:type>2</em:type>
    <em:targetApplication>
      <Description>
        <em:id>{uuid here}</em:id>
        <em:minVersion>31.*</em:minVersion>
        <em:maxVersion>47.*</em:maxVersion>
      </Description>
    </em:targetApplication>
    <em:name>extensionName</em:name>
    <em:description>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Veniam voluptates natus soluta quis culpa animi, vitae laborum magnam! Facere reiciendis nihil porro non odio hic deserunt obcaecati soluta, nostrum recusandae!</em:description>
    <em:creator>Name LastName</em:creator>
    <em:homepageURL>http://www.mydDomain.com/</em:homepageURL>
  </Description>
</RDF>

这个答案是基于关于你的附加组件的一些假设。 在问题中包含最小、完整和可验证的示例 (MCVE( 对您很有帮助,这样我们就可以复制问题。如果没有MCVE,有必要猜测您的问题到底是什么。

您的扩展在没有install.rdf文件的情况下"工作"(或至少在 Firefox 工具栏中显示一个图标(这一事实意味着您正在使用附加 SDK。此答案基于您正在使用附加 SDK 的假设。 如果您没有使用附加 SDK,那么如果没有install.rdf文件,附加组件根本不应该工作,我们需要一个 MCVE .作为构建过程的一部分,加载项 SDK 会自动生成install.rdf

我建议查看构建过程中生成的install.rdf并复制它。然后,如果您有要调整的内容,可以对文件进行更改。

至于您当前正在使用的install.rdf文件,至少可能需要添加:

<em:bootstrap>true</em:bootstrap>

这可能是必需的,因为所有附加 SDK 扩展都是无需重启的。但是,最好的办法是采用自动生成的install.rdf,只更改您需要的内容。

最新更新