類型
附加組件存在多種類型:
擴展:修改現有功能的行為或者添加新功能。該功能可以是用戶界面中的某處,或者執行某個動作時表現出的功能特徵。
主題則是一種著重關注用戶界面的擴展。
搜尋引擎定義是一種功能性擴展。不完全列表見Firefox擴展列表條目,除此之外還有適用於Thunderbird、SeaMonkey和Sunbird的擴展。
主題:原名“Personas”(炫彩風格)。它是一種規範化的修改用戶界面某些元素的標準。其最鮮明的特徵就是將背景圖像添加到瀏覽器主視窗的
工具列、
選單欄和
狀態欄。它也可以更改一些文本和背景顏色。
網站
相比為Mozilla相關項目提供免費託管的mozdev.org,Mozilla Add-ons的服務目標是
最終用戶,而不只是軟體開發者。許多Mozilla應用程式包括到達該網站的直接連結,並包含設定以自動檢查擴展和應用程式本身的更新。Firefox 3開始包含一個功能,允許在附加組件管理器中直接檢索和顯示該網站的提供內容。
2008年1月30日,網站宣布附加組件下載量已達6億次,並且每天服務超過1億次附加組件的自動檢查更新。
2012年7月26日,Mozilla宣布該網站的附加組件下載量已達30億次。
歷史
在早期,
Mozilla Add-ons被稱之為Mozilla Update(或簡稱UMO,
主機名為update.mozilla.org)。該網站在發布並歷經多次變化後變成了
AMO。
2006年4月4日,公共頁面的重大改寫發布。
2006年10月24日,Firefox頁面的新版界面推出,迎接Firefox 2發布和新版mozilla.com樣式。
2007年3月23日,完全重寫的開發者和公共頁面發布,代號Remora。
2008年春季,代號“Remora 3.2”的新版界面推出。
2011年,採用PHP/CakePHP編寫的Remora取代採用Python/Django編寫的Zamboni。網站還進行了重新設計,代號Impala。
擴展
擴展可以用於修改應用程式現有功能的行為,或者添加全新功能。擴展是Firefox中極受歡迎的一項功能,因為Mozilla開發者希望瀏覽器是一個簡約的應用程式以減少軟體膨脹和缺陷,同時保持高度的
可擴展性,使每個用戶都能添加自己喜歡的功能。
擴展技術
擴展可以使用下列技術開發:
使用
一些擴展的用途是改變應用程式的界面。這與功能為主題管理的Personas(炫彩風格)不同。舉例來說,有幾個附加組件的功能是更改“Firefox按鈕”的顏色,例如ColorizedButton。還有一個擴展是,將Windows上的選單欄移動到標題欄的位置。
許多擴展可以改變所呈現的網頁內容。比如說,Adblock擴展可以阻止瀏覽器載入廣告性質的圖片。
Greasemonkey可以讓用戶安裝用戶腳本來以程式的方式修改修改目標網站的特定代碼等。
也有一些擴展的存在目的只是輕鬆、幽默或諷刺。還有一些擴展是為找回存在於舊版Firefox但最新版本已經刪除的功能。
安全
不同於
Google Chrome,Mozilla平台沒有限制擴展許可權的機制。擴展代碼受到Mozilla應用程式的完全信任。對擴展與作業系統之間的相互通信也沒有限制。這意味著一個擴展可以讀取和修改另一個擴展使用的數據,以及訪問用戶運行Mozilla應用程式所在系統的任何可訪問檔案。
Mozilla擴展默認安裝到應用程式的用戶配置資料夾中,用戶和用戶運行的任何程式都可以讀寫和覆蓋其中的代碼。由於曾經Mozilla平台不檢查已安裝擴展的完整性,因此這些代碼可以被更改以用於任意代碼執行。
從Firefox 40.0開始,Mozilla將擴展簽名列為正式版和公測版(Beta)的強制要求。從40.0開始,瀏覽器將向最終用戶警告未簽名的擴展;從43.0開始,只有在about:config頁面中啟用一個特殊的首選項才能安裝未簽名的擴展;從44.0開始,Firefox阻止未簽名擴展的安裝和載入。在Firefox的開發者版本(Developer Edition)和每夜版(Nightly)中,Firefox仍保留一個首選項及相關功能來禁用或繞過簽名要求。根據計畫,Firefox後期也發布了“無品牌版本”的正式版和公測版,以允許開發者在特定平台上測試未簽名的擴展。
兼容性與更新
擴展包含的附有
元數據的
XML檔案會被附加組件安裝機制使用。在該檔案中,此附加組件適用的Mozilla應用程式項目的最大和最小版本也被標明。如果安裝的附加組件適用版本不再範圍內,安裝可能會被阻止或警告。然而,元數據中的版本範圍並不能保證附加組件在此範圍內與外一定能正常工作,並可使用方法繞過該兼容性檢查。
附加組件管理器會定期的自動從Mozilla附加組件網站(或擴展自行定義的地址)檢查是否存在更新,用戶也可自行觸發附加組件的檢查更新。
主題
使用炫彩風格的LibreOffice Writer主題,原名Personas(炫彩風格),它允許用戶快速的改變一個應用程式的外觀。儘管最早的Personas是採用一個擴展來實現,但該功能從Firefox 3.6開始已被內置,並在之後被其他一些應用程式採用。這些“背景主題”與實現為Mozilla擴展的傳統主題、完整主題不同。這種主題更加基礎,也更容易創建和安裝,但能力僅限於更改工具列、選單欄和狀態欄的背景圖像、背景顏色和文本顏色。它們不需要以擴展的形式安裝,也不能更改工具列等界面元素的形狀、外觀、功能表現等。安裝它們非常簡單,只需單擊即可下載並激活,並還支持懸停預覽即時效果。
該類主題最早託管於GetPersonas.com,後在2013年被轉移到Mozilla Add-ons網站。此外,因為名稱與被稱為“Mozilla Persona”的方案類似,Mozilla停止使用該名稱並改稱之為“主題”,儘管這將基於擴展實現的主題(現稱之為完整主題、傳統主題)與Personas混淆,但它們均由附加組件管理器安裝和管理,並且顯示在同一欄目中(現稱之為“外觀”)。
外掛程式
Mozilla外掛程式正在被逐漸淘汰。Mozilla計畫2016年在
Firefox中停止使用大多數外掛程式。