如何在 macOS Mojave 中恢復無法使用的 Safari 舊擴充套件
與 Chrome 一樣,Safari 也有不少擴充套件。你可以在 Safari 瀏覽器、Mac App Store 和開發者網站下載所需的擴充套件,而少數派此前也曾介紹過一些尚未上架 Mac App Store 的實用 Safari 擴充套件。不過在升級 macOS Mojave 後,你可能會發現,文中介紹的擴充套件已經無法繼續使用。

這一問題源於與 macOS Mojave 一同釋出的 Safari 12。 新版的 Safari 不再支援未經蘋果官方稽核的擴充套件,並啟用了全新的擴充套件 API。 相比原有的 API,這一新的 API 減少了擴充套件可以訪問的內容。這也就意味著,一些擴充套件即使通過了官方稽核,也可能無法實現原有的功能。
不過,這也不意味著我們只能放棄這些擴充套件。藉助本文中的方法,你可以繼續像往常一樣使用它們。
首先,我們需要定位到已安裝的擴充套件。開啟訪達後,點選選單欄中的「前往」,按住 ⌥option
後,選擇「資源庫」。

在開啟的視窗中,依次選擇「Safari - Extensions」。在這一資料夾中,將你希望使用的擴充套件拖到桌面。為了方便接下來的操作,你可以將它們存放在一個資料夾中。

完成這一步驟後,開啟終端 App,輸入 cd
。然後,將剛剛建立的資料夾拖到終端的視窗,按下回車鍵,即可讓終端定位到目標位置。如果你在上一步中沒有建立資料夾,也可以參考少數派之前的文章,在訪達視窗上顯示當前路徑,並將其輸入至終端。

隨後,在終端中輸入 xar -xf 擴充套件的名稱
,比如 xar -xf NoMoreiTunes.safariextz
,按下回車鍵。擴充套件所在的位置將產生一個與該擴充套件的名稱相同的資料夾。你需要對每一個擴充套件重複上述的操作。

完成這一步驟後,開啟 Safari,在「偏好設定 - 高階」中確認勾選了「在選單欄中顯示『開發』選單」一項。

然後,依次點選選單欄中的「開發 - 顯示擴充套件構建器」。初次開啟時,系統會彈窗要求確認,點選「繼續」即可。

在開啟的擴充套件構建器視窗中,點選左下角的「+」,選擇「新增擴充套件」。選中並新增由終端生成的、以副檔名命名的資料夾即可。

新增完畢後,點選「執行」,輸入密碼,就完成了這一擴充套件的安裝。之後,你就可以在 Safari 的偏好設定中正常地啟用該擴充套件。

不過,這一解決方案也並非完美。首先, 未經蘋果稽核的擴充套件可能存在著安全風險 。因此,建議你僅通過這一方式恢復你已經長期使用、可以信賴的擴充套件,而不是用來繼續安裝新的未稽核擴充套件。此外,這只是一個 臨時性的方法 ,究竟能夠有效多久還是未知數。而且,每次系統升級後你都可能需要重新進行上述操作。
:link: 參考文章:《 ofollow,noindex">Give new life to old extensions in Safari 12 》