0

我正在尝试根据来自https://developer.mozilla.org/en/Localizing_extension_descriptions的信息(在 Gecko 1.9 之前进行本地化)为 Firefox 构建一个具有本地化名称的扩展,但它不起作用。浏览器的 Javascript 控制台中的错误是:

Błąd:[异常...“组件返回失败代码:0x80004003(NS_ERROR_INVALID_POINTER)[nsIRDFService.GetLiteral]”nsresult:“0x80004003(NS_ERROR_INVALID_POINTER)”位置:“JS 框架 :: file:///C:/Program%20Files/ Mozilla%20Firefox%201.5/components/nsExtensionManager.js :: EM_L :: line 225" 数据:无]
Plik źródłowy: file:///C:/Program%20Files/Mozilla%20Firefox%201.5/components/nsExtensionManager.js
维尔斯:225

我的扩展文件层次结构是:

gemgecko.xpi:
              /安装.rdf                   
              /components/gemgecko.dll                   
              /defaults/preferences/prefs.js                          
              /chrome.manifest                  
              /chrome/locale/pl/install.properties
              /chrome/locale/en/install.properties

/defaults/preferences/prefs.js:

pref("extensions.gemgecko@gemius.pl.name", "chrome://gemgecko/locale/en/install.properties");

/chrome/locale/en/install.properties:

extensions.gemecko@gemius.pl.name=gemiusAudience 研究

/chrome/locale/pl/install.properties:

extensions.gemgecko@gemius.pl.name=Badanie Megapanel PBI/Gemius

任何人都可以帮我在我的扩展程序中找到错误吗?

编辑

我正在添加安装清单...

/安装.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>gemgecko@gemius.pl</em:id>
    <em:version>2.01</em:version>
    <em:name>nazwa</em:name>
    <em:creator>tworca</em:creator>
    <em:description>opis</em:description>
    <em:homepageURL>http://www.test.pl</em:homepageURL>

    <em:targetApplication>
        <Description>
            <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <!-- firefox -->
            <em:minVersion>1.5.0</em:minVersion>
            <em:maxVersion>*</em:maxVersion>
        </Description>
    </em:targetApplication>

</Description>

</RDF>

我已经在 Firefox 1.5 和 3.6 上对其进行了测试。在 3.6 上一切似乎都可以正常工作,但在 1.5 上却不行 - 扩展管理器显示扩展名install.rdf不是来自chrome://gemgecko/locale/install.properties...

4

1 回答 1

1

chrome://gemgecko/locale/en/install.properties对我来说似乎是错误的, /en/ 不是 chrome: URL 的一部分,它在 chrome: URL 转换时被替换。

编辑:

我在您的 chrome.manifest 中没有看到任何chrome 注册条目。它们应该看起来像这样:

locale gemgecko pl chrome/locale/pl
locale gemgecko en chrome/locale/en
于 2011-01-21T20:00:35.303 回答