Firefox addon 我应该在使用相同的XUL覆盖时指定应用程序吗?

Firefox addon 我应该在使用相同的XUL覆盖时指定应用程序吗?,firefox-addon,xul,thunderbird,seamonkey,Firefox Addon,Xul,Thunderbird,Seamonkey,假设我想在三个应用程序中同时使用一个覆盖。我应该指定清单文件中的哪一行应用于哪个应用程序吗?以下是我目前拥有的一个例子: overlay chrome://browser/content/browser.xul chrome://myaddon/content/commonOverlay.xul application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} overlay chrome://messenger/content/mailWindowOverl

假设我想在三个应用程序中同时使用一个覆盖。我应该指定清单文件中的哪一行应用于哪个应用程序吗?以下是我目前拥有的一个例子:

overlay chrome://browser/content/browser.xul chrome://myaddon/content/commonOverlay.xul application={ec8030f7-c20a-464f-9b0e-13a3a9e97384}
overlay chrome://messenger/content/mailWindowOverlay.xul chrome://myaddon/content/commonOverlay.xul application={3550f703-e582-4d05-9a08-453d09bdfdc6}
overlay chrome://navigator/content/navigator.xul chrome://myaddon/content/commonOverlay.xul application={92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}

省略应用程序标志是否安全,或者最佳做法是否像我的示例中那样明确?

这取决于您的加载项通过em:targetApplication实际支持什么

通常不需要使用application=,因为根本不存在歧义


我能想象的唯一有意义的情况是,如果您的插件支持两个不同的应用程序,这两个应用程序都有一个chrome://browser/content/browser.xul 但您只想覆盖Firefox,而不想覆盖其他应用程序。这需要明确说明。

我推荐firefox插件标签,这是人们通常使用的标签。如果不指定应用程序标志,它将不起作用。你所说的应用程序标志是什么意思?这就是我的install.rdf的样子:@Noitidart:谢谢你的建议!应用程序标志是如下字符串:application={92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}。在我的示例中,当您向右滚动时可以看到它们。不过,它在没有它们的情况下也可以工作,可能是因为我的覆盖对于所有浏览器都是相同的,并且我将它应用于browser.xul和navigator.xul,它们中的每一个都只存在于一个浏览器中。我不确定它是否工作,因为它是这样设计的,或者它是否在内部抛出错误。我仍然不确定省略应用程序标志是否是一个干净的解决方案,您认为您可以澄清这一点吗?当然,它是有效的,但由于我要将我的更改贡献给某人的GitHub存储库,质量是必须的。这是一个品味和明确性的问题。所以最终这是一个意见的问题。在我看来,已经开发了相当多的附加组件,并且已经为AMO审阅了数千份提交的文档,这里绝对不需要明确,而且明确性也使得清单的可读性降低。这一次我要接吻了。@N迈尔:非常感谢@诺伊蒂达特:意思是保持简单,愚蠢:-