簡體   English   中英

通過注冊表安裝的Firefox加載項是否可以使用updateURL?

[英]Is it possible for Firefox Add-on installed via registry to use updateURL?

我已經使用附加SDK構建了Firefox擴展,並通過注冊表項強制安裝它。 (通過HKLM\\Software\\Mozzilla\\Firefox\\Extensions\\extensionid

當我轉到附加組件管理器並選擇“檢查更新”時,它不會向<updateUrl>指定的URL發出請求。 有些請求針對https://versioncheck.addons.mozilla.org/ ...,但不針對<updateUrl>指定的我的自定義URL。

使用Firefox附加SDK開發的空白hello world擴展也可以重現此問題:

cfx init
cfx xpi --update-url https://fooo.com/update.rdf

然后使用WinRAR將XPI解壓縮到C:\\test-extension並在以下注冊表項下添加一個字符串值:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Mozilla\Firefox\Extensions\ 

帶有名為jid1-W2S1bxv6O1LoAA@jetpack的字符串值(生成的擴展ID)指向帶有解壓后的XPI的文件夾:

注冊表值名稱: jid1-W2S1bxv6O1LoAA@jetpack 值: C:\\test-extension

然后啟動Firefox,該擴展程序將安裝到Firefox中。 在附加組件管理器中,選擇檢查更新。

永遠不會訪問在C:\\test-extension\\install.rdf指定為<updateURL>的URL。

為了完整起見,這是install.rdf文件(未經修改的直接來自cfx生成的輸出的默認值):

<?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>jid1-W2S1bxv6O1LoAA@jetpack</em:id>
    <em:version>0.1</em:version>
    <em:type>2</em:type>
    <em:bootstrap>true</em:bootstrap>
    <em:unpack>false</em:unpack>

    <!-- Firefox -->
    <em:targetApplication>
      <Description>
        <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
        <em:minVersion>19.0</em:minVersion>
<!-- I tried also with maxVersion 25.* -->
        <em:maxVersion>20.*</em:maxVersion>
      </Description>
    </em:targetApplication>

    <!-- Front End MetaData -->
    <em:name>TEST</em:name>
    <em:description>a basic add-on</em:description>
    <em:creator></em:creator>
    <em:updateURL>https://mydomain.com/updates.rdf</em:updateURL>
  </Description>
</RDF>

當我通過拖放操作手動安裝.xpi文件到Firefox中時,當我在“加載項管理器”中調用“ Check for Updates時,將按預期檢查updateURL。

我想念什么嗎? 通過注冊表安裝的擴展是否支持通過<updateURL>進行的更新?

通過Windows注冊表進行的安裝已鎖定 ,因此附加組件不被視為可升級。 與配置文件中的加載項不同,此類位置被視為外部位置,不受應用程序控制,因此用戶極有可能無法升級加載項(只有系統管理員才能升級)。

通過系統位置的任一注冊表安裝的加載項必須提供自己的升級機制。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM