透過 WebExtensions 將 Chrome 的擴充套件移植到 Firefox 上使用

在我看過〈Let’s Write a Web Extension〉一文之後,我就想要實際將附加元件移植到 WebExtension。而我又特別想把高人氣且開放源碼的 Chrome 版本「Reddit Enhancement Suite (RES)」移植成 Firefox 版本。以下就是我的一點心得,希望能讓大家能立刻準備移植自己的附加元件。

螢幕快照 2015-11-30 上午10.43.49

 

附註:連 RES 的作者群都對 WebExtensions 有著高度興趣,也計畫要正式移植此附加元件。但重點是,如果你要使用 RES,就必須先到 AMO 上安裝可支援的版本。

首先,我要強調 WebExtensions 是多年的長期專案。首次釋出版本是以基礎架構、完整支援、可跨瀏覽器的 API 為主。這也代表在能支援特定瀏覽器功能的複雜附加元件之前,還有不算短的一段路要走。但我們一定會達到目標。

由於目前進度仍早期的實驗性質,你必須搭配 Firefox 的「每夜更新版 (Nightly)」才能繼續以下步驟。下列內容也僅限淺嚐即止,還不足以讓你著手佈署。

簡單的說,如果你手上 Chrome 擴充套件或跨瀏覽器的附加元件,就能開始實驗 WebExtensions 並提供意見。任何人的寶貴建議,都能協助 Mozilla 儘早規劃高優先性的 API 及其支援功能。

準備移植

  1. 需先行下載並安裝 Firefox 每夜更新版 (Nightly)
  2. 建立新的設定檔進行測試與開發。
  3. 於網址列鍵入 about:config,將 xpinstall.signatures.required 設定為「false」。

宣稱 Firefox 的相容性

你必須先將 applications 鍵值加入 manifest.json 檔案,以明確標記自己的附加元件可相容於 Firefox。如下:

將「YOUR_ADDON_ID」設定為像是捏造的字串格式,如「ext@example.org」。如果你計畫要讓你的使用者從現有 Firefox 附加元件升級為 WebExtension 版本附加元件,就要重複使用自己 package.json 檔案中的「id」欄位值。

 


你手上有一堆好用的 Chrome 擴充套件,也想弄到 Firefox 上使用嗎?那還不快來試試強大的 WebExtensions?敬請回到原文觀看更多精采細節內容與範例程式碼。

 

 

原文連結:Porting Chrome Extensions to Firefox with WebExtensions

 

 

您可能也會喜歡

目前找不到相關文章

對此文章發表回應

你的電子郵件位址並不會被公開。 必要欄位標記為 *